使用requests获取含中文html时的乱码问题

aqasaz1928 XPath 与多线程爬虫 最后由 kingname 于2015年06月01日回复

  • 2 回答
  • 2.3k 浏览

使用request爬去页面后中文内容经常出现乱码,使用reload(sys),setdefaultencoding(‘utf8’) 也不能解决问题

  • 极客学院_ASMITA 2015年05月29日 回答 #1楼
  • setdefaultencoding只是设置接受的数据编码,并不是内容的编码,

    需要单独写程序进行转码,可以用charset判断,没有charset的页面则需要根据字符串的实际内容进行判断

  • 0 评论
  • kingname 2015年06月01日 回答 #2楼
  • 例如,

     html = requests.get('xxxx')

    获取到了一个网页的源代码,你需要使用

    html.encoding = 'utf-8'

    将源代码转化为utf-8格式,

    然后再

    print html.content

    这样出来中文就不是乱码了。

  • 0 评论