url="http://www.google.com.hk/#hl=zh-CN&source=hp&q=site:introcn.com&oq=site:introcn.com&aq=f&aqi=&aql=&gs_sm=e&gs_upl=1354l5480l0l16l12l0l0l0l0l0l0ll0&fp=e3acde8785a5e40&biw=1024&bih=592"
response=uq.urlopen(url)
page2=response.read()
page2=page2.decode("utf-8")
m2=re.findall(r"找到约\s[\d\,]*\s条结果",page2)
总是报decode那一行的错,去掉也不行,换成gbk也不行,
但同样的代码我抓取不百度的就可以,我郁闷了,
请高手解答一下。
3 个解决方案
#1
别抓google,小心被封IP。使用google api访问。
#2
先可以查看一下抓取的内容的字符编码,然后再做解码.不要直接.decode,可以试试.
#3
你page2的编码格式你不确定,所以你用utf-8或者gbk来解码成unicode不一定对啊,并且网页的话,你decode最好加上errors = “xmlcharrefreplace”
#1
别抓google,小心被封IP。使用google api访问。
#2
先可以查看一下抓取的内容的字符编码,然后再做解码.不要直接.decode,可以试试.
#3
你page2的编码格式你不确定,所以你用utf-8或者gbk来解码成unicode不一定对啊,并且网页的话,你decode最好加上errors = “xmlcharrefreplace”