爬虫
爬虫简单来说,就是通过编写程序,模拟浏览器上网,然后让其去互联网上抓取数据的过程。可以把浏览器简单的理解为一个原始的天然的爬虫工具
爬虫的作用
可以获取有价值的信息,如渗透测试的时候我们可以通过编写python脚本批量进行漏洞验证或者爬取网站有价值的数据
爬虫的合法性
爬虫技术本身是合法的,但是利用其进行非法获取数据则是不合法的。如
- 爬虫干扰了被访问网站的正常运营
- 爬虫抓取了收到法律保护的特定类型的数据或信息
则属于恶意爬虫
爬虫分类
1. 通用爬虫
各大搜索引擎抓取系统的重要组成部分,其抓取的是一整张页面数据。如
- 百度:竞价排名
- 百度爬虫:域名商、友情链接、自己提交
2. 聚焦爬虫
其建立在通用爬虫的基础上,抓取的是页面中特定的局部内容
3. 增量式爬虫
监测网站中数据更新的情况,只抓取网站中最新更新出来的数据
反爬机制
门户网站通过制定相应的策略或者技术手段,防止爬虫程序进行网站数据的爬取
反反爬策略
爬虫程序可以通过制定相关的策略或者技术手段,破解门户网站中具备的反爬机制,从而可以获取门户网站的数据
robotx.txt协议(君子协议)
Robots协议,也称为爬虫协议、机器人协议等,其全称为“网络爬虫排除标准(Robots Exclusion Protocol)”。网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取。也既是Robots的用法有两种,一种是告诉搜索引擎哪些页面你不能抓(默认其他的就可以抓);一种是告诉搜索引擎你只能抓取哪些页面(默认其他的不可以抓)。
当一个搜索机器人(蜘蛛)访问一个站点时,它会首先检查网站根目录下是否存在robots.txt,如果存在,就会按照文件中的内容确定访问范围,如果不存在,则沿着链接抓取。
但是Robots协议对于个人不是强制性的可以不遵守。