什么是爬虫?
解释1: 通过一个程序,根据url1进行爬取网页,获取有用信息。
解释2: 使用程序模拟浏览器,去向服务器发送请求,获取响应信息。
爬虫分类
- 通用爬虫
功能:
访问网页->爬取数据->数据存储->数据处理->提供检索服务
robots协议:
一个约定俗成的协议,添加robots.txt文件,来说明本站哪些数据不可以被爬取,起不到限制作用,自己写的爬虫不需要遵守。
网站排名:
1. 根据PageRank算法值进行排名(参考个网站流量、点击率等指标)
2. 百度竞价排名
缺点:
1. 抓取的数据大多是无用的
2. 不能根据用户的需求来精准获取数据
- 聚焦爬虫
功能:
根据需求,实现爬虫程序,抓取需要数据。
设计思路:
1.确定要爬取的url
2.模拟浏览器通过http协议访问,获取服务器返回的html代码
3.解析html字符串
(下面这两种还没有接触到,学到后进行更新,尽请期待)
- 增量式爬虫
- 深层网络爬虫
反反爬手段
- User-Agent:
User-Agent为用户代理,简称UA,他是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版本、CPU类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等 - 代理IP
- 西词代理
- 快代理
- 高匿名、匿名、透明代理的区别
- 使用透明代理,对方服务器可以知道你使用了代理,也可以知道你的真实IP
- 使用匿名代理,对方服务器可以知道你使用了代理,但不知道你的真实IP
- 使用高匿名代理,对方服务器不知道你使用了代理,也不知道你的真实IP
- 验证码访问
打码平台 - 动态加载网页 网站返回的是js数据,并不是网页的真实数据
selenium驱动真实的浏览器发送请求 - 数据加密
分析js代码