0%

网络爬虫的问题和行为规范

本文简单介绍了网络爬虫的类型、存在的问题、限制形式以及Robots协议内容。

继上一篇有关爬虫基础及Requests库介绍后,继续学习廖雪峰老师的课,感觉讲的非常系统。继续做笔记~

一. 网络爬虫类型

  1. 目的:爬取网页,玩转网页

    特征:小规模,数据量小爬取速度不敏感

    方法:Requests库

  2. 目的:爬取网站,爬取系列网站

    特征:中规模,数据规模较大,爬取速度敏感

    方法:Scrapy库

  3. 目的:爬取全网

    特征:大规模,搜索引擎,爬取速度关键

    方法:定制开发

二. 爬虫引发的问题

网络爬虫带来便利的同时也造成了很多风险:

  1. 超出服务器服务能力,对服务器性能造成“骚扰”
  2. 内容法律风险
  3. 个人隐私泄露

由于存在种种问题,这就需要网站都对爬虫进行限制。

三. 爬虫的限制

限制方法有以下两种:

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

四. Robots协议

1. Robots协议基本概念

Robots Exclusion Standard 网络爬虫排除标准

作用:网站告知爬虫哪些页面可以抓取,哪些不可以。

形式:在网站根目录下的robots.txt文件。

Robots协议基本语法:

1
2
User-agent: *
Disallow: /

案例:京东 https://www.jd.com/robots.txt

第一个红框代表:任何访问形式都需要遵守以下协议。

第二个红框代表:以下几种爬虫不能访问任何资源。

image-20200525113453620
image-20200525113453620

如果没有robots.txt文件,那么说明可以任意爬取。

2. 遵守方式

网络爬虫:自动或人工识别robots.txt协议,在进行内容爬取。

约束性:Robots协议是建议但是非约束性的,网络爬虫可以不遵守,但是存在法律风险。

Tips:类人类行为可不参考Robots协议,简单就是说访问量很小。(我寻思这就是打造一个可以慢吞吞但类人的爬虫哦!)


这次的笔记内容比较轻松好理解,学起来很快,突然对爬虫产生了浓厚的兴趣。不过似乎现在很多反爬虫什么的。相信随着科技的发展,很多东西在给我们带来便利的同时,也会被逐渐限制。或许等某一天我再看自己写的这个博客,Robots协议变得更加有限制性吧。

じゃね〜

-------------本文结束感谢您的阅读-------------