最新公告
  • 欢迎您光临站盟网(原知事网),一个优质的网站源码基地、精品网站模板和插件。欢迎加入永久SVIP
  • python3中编码如何获取网页?

    正文概述 知事网   2020-11-15 09:11   509

    学了python后,之前一些我们常用的方法,也可以换一种思路用python中的知识来解决。相信操作出来后,能收获一大批小粉丝们。就像我们没学习编程之前,看到那种大神都是可望而不可即。今天我们就之前简单获取网页的这种操作用python中的编码来解决,大家可以自行体会一下两者的不同。

    1. encoding和apparent_encoding

    import scrapy
    url="https://www.ygdy8.net/html/gndy/dyzz/index.html"
    re=requests.get(url)
    #获取响应头Content-Type的charset值,有的网站没有charset字段,就可能使用默认的 ISO-8859-1
    print(re.encoding)
    #apparent_encoding就是获取网站真实的编码
    print(re.apparent_encoding)

    2. 处理方案

    直接用r.encoding = ‘xxx’

    re.encoding='utf-8'

    3. requests的text() 跟 content() 有什么区别

    re.text返回的是处理过的Unicode型的数据,

    而使用re.content返回的是bytes型的原始数据。

    4. 爬虫拿到的HTML和浏览器中的源码不相同时

    通过下载源码对比

    import requests
    url = 'https://www.ygdy8.net/html/gndy/dyzz/index.html'
    r  = requests.get(url)
    r.encoding = r.apparent_encoding
    html = r.text
    with open('test.html','w',encoding='utf8') as f:
    f.write(html)

     

    以上就是python3编码获取网页的一些操作方法,小伙伴们学会没?当然获取网页的方法比较多,这里就不一一介绍,有机会的话小编会在后续的文章中更新一下。学习了python之后,编程应用于生活会越来越多,帮助我们简化生活的繁琐事情。


    站盟网 » python3中编码如何获取网页?

    发表评论

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

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

    联系作者
    请选择支付方式
    ×
    支付宝支付
    微信支付
    余额支付
    ×
    微信扫码支付 0 元