python 抓取网页数据

优采云 发布时间: 2022-08-30 16:38

  python 抓取网页数据

  此文解决如何从不同网页爬取数据的问题及注意事项,重点说明requests库的应用。

  在开始之前,要郑重说明一下,不是每一个网页都可以爬取数据哦。有的网页涉及个人隐私或其他敏感信息,是不允许被爬取的,硬爬的话是违法的。

  ❤️爬虫协议说明

  但是一般的网页都是公开可爬取的啦,要注意网站的爬虫协议,查看爬虫协议的方法也很简单:在所要爬取网站的后面加上/robots.txt字样,如果跳转到一个新的网页,上面会标注本网站的哪个部分不能被爬取,然后自己注意不要碰那些敏感内容就好啦!

  ❤️requests库的一般用法

  

  <p style="margin-left: 8px;margin-right: 8px;">#导入request库<br />import requests<br /><br />#得到目标网页的response<br />r = requests.get('目标网页的url')<br /><br />#确认是否成功获取response,若返回“200”则说明正常获取<br />r.status_code<br /><br />#显示抓取的文本内容<br />r.txt</p>

  requests库一般是用于中小型数据的。大型数据用scrapy库。

  反爬虫网页的爬取

  有一些网页有翻爬虫设置,下面是常见的一种——需要用户代理信息才能进行爬取操作的。

  实际操作如下:

  在目标网址后输入/robots.txt查询爬虫协议,查看所需信息是否禁止爬取。

  

  在浏览器网址栏输入about:version,可以看到有user agent的信息,这个就是你客户端的用户信息,划重点,这个要考!

  你的爬虫程序要伪装成一个客户端,“骗”过目标网页,它才会跟你“说话”,不然就给你拒之门外(status_code不等于200)。

  设置header,伪装成客户端。

  header = {'User_Agent':'刚刚划重点的内容'}

  这里header其实是一个字典,它将会作为参数输入,给你的python程序加上伪装*敏*感*词*。可以理解header是一个伪装*敏*感*词*。

  戴上伪装*敏*感*词*:用requests.get('目标网页的url',header = header)方法,这里的header就是第4点的header

  这样就可以顺利跟目标网页进行“握手”啦!

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线