最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • 如何用res函数解决python爬虫的中文乱码?

    正文概述    2020-07-01   325

    如何用res函数解决python爬虫的中文乱码?

    自从接触了编程后,小编发现了很多出错的案例,有的是代码错误,有的是程序操作过程的问题。在报错方面,乱码也不会局限中文报错一种,还有英文报错等其他类型,如何帮助新手小白解决这方面的问题,小编一直很关注。今天小编就带来res函数解决python爬虫的中文乱码办法,大家一起学习一下。


    我们知道Requests 会基于 HTTP 头部对响应的编码作出有根据的推测。当你访问 r.text 之时,Requests 会使用其推测的文本编码。你可以找出 Requests 使用了什么编码,并且能够使用r.encoding 属性来改变它。接下来,我们一起通过resquests的一些用法,来看看Requests 会基于 HTTP 头部对响应的编码方式。

    print(res.encoding)  #查看网页返回的字符集类型
    print(res.apparent_encoding) #自动判断字符集类型

    输出结果为:

    如何用res函数解决python爬虫的中文乱码?

    可以发现Requests 推测的文本编码(也就是网页返回即爬取下来后的编码转换)与源网页编码不一致,由此可知其正是导致乱码原因。

     

    解决方法

    根据原因来找解决方法,就非常简单了。

    方法一:直接指定res.encoding

    import requests
     
    url = "http://search.51job.com"
    res = requests.get(url)
    res.encoding = "gbk"
    html = res.text
    print(html)


    方法二:通过res.apparent_encoding属性指定

    import requests
     
    url = "http://search.51job.com"
    res = requests.get(url)
    res.encoding = res.apparent_encoding
    html = res.text
    print(html)


    以上两种res函数的方法都可以解决python爬虫中文乱码的问题,小伙伴们可以逐一尝试,选择合适的方法处理乱码问题。更多Python学习推荐:起源地模板网教学中心



    起源地下载网 » 如何用res函数解决python爬虫的中文乱码?

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元