Python-网络爬虫的盗亦有道

目录

网络爬虫引发的问题

Robots协议

Robots协议的遵守


网络爬虫引发的问题

网络爬虫的尺寸

  • 小规模,数据量小,爬取速读不敏感,Requests库,>90%; 爬去网页,玩转网页
  • 中规模,数据规模大,爬去速读敏感,Scrapy库;爬取网站,爬取系列网站
  • 大规模,搜索引擎,爬取速度关键,定制开发;爬取全网

性能骚扰

Web服务器默认接收人类访问,受限于编写水平和目的,网络爬虫将会为Web服务器带来巨大的资源开销

法律风险

服务器上的数据有产权归属,网络爬虫获取数据后牟利将带来法律风险

隐私泄露

网络爬虫可能具备突破简单访问控制的能力,获得被保护数据从而泄露个人隐私

扫描二维码关注公众号,回复: 11321716 查看本文章

网络爬虫的限制

  • 来源审查:判断User-Agent进行限制,检查来访HTTP协议头的User-Agent域,只响应浏览器或友好爬虫的访问
  • 发布公告:Robots协议,告知所有爬虫网站的爬取策略,要求爬虫遵守

Robots协议

  • Robots Exclusion Standard,网络爬虫排除标准
  • 作用:网站告知网络爬虫哪些页面可以抓取,哪些不行
  • 形式:在网站根目录下的robots.txt文件
#注释,*代表所有,/代表根目录

#京东的Robots协议
https://www.jd.com/robots.txt

User-agent: * 
Disallow: /?* 
Disallow: /pop/*.html 
Disallow: /pinpai/*.html?* 
User-agent: EtaoSpider 
Disallow: / 
User-agent: HuihuiSpider 
Disallow: / 
User-agent: GwdangSpider 
Disallow: / 
User-agent: WochachaSpider 
Disallow: /

案例:真实的Robots协议

https://www.baidu.com/robots.txt

http://news.sina.com.cn/robots.txt

https://www.qq.com/robots.txt

https://news.qq.com/robots.txt

http://www.moe.edu.cn/robots.txt (无robots协议)

Robots协议的遵守

robots协议的使用

  • 网络爬虫:自动或人工识别robots.txt,再进行内容爬取
  • 约束性:Robots协议是建议但非约束性,网络爬虫可以不遵守,但存在法律风险

对Robots协议的理解

爬取网页 玩转网页

  • 访问量很小:可以遵守,访问量较大,建议遵守;

爬取网站 爬取系列网站

  • 非商业且偶尔:建议遵守 商业利益:必须遵守

爬取全网

  • 必须遵守

原则:类人行为可不参考Robots协议

本文仅为学习Python记录,资料来源于中国大学MOOC《Python网络爬虫与信息提取》—嵩天

猜你喜欢

转载自blog.csdn.net/cheng6023/article/details/103177328