1. 爬虫相关概念
1.1 定义
一段根据url爬取 页获取有用信息的程序,使用程序模拟浏览器向服务器发送请求获取响应信息
1.2 核心
- 爬取 页:爬取整个 页,包含 页所有内容
- 解析数据:将 页中的数据进行解析
1.3 难点
爬虫与反爬虫之间的博弈
1.4 用途
- 数据分析/人工数据集
- 交软件冷启动
- 舆情监控
- 竞争对手监控
1.5 分类
-
通用爬虫(无需掌握):爬取的数据大多是无用的 无法根据用户的需求精准获取数据
? 几乎所有的搜索引擎都是通用爬虫
? 一般过程为:访问 页—>爬取数据—>存储数据—>处理数据—>提供检索服务
? 本应该根据PageRank算法(参考 站流量、点击率等指标)进行排名,现在却通过竞价进行排名
-
聚焦爬虫(需要掌握):根据需求实现爬虫程序 抓取需要的数据
? 设计思路:
- 确定爬取的 页——如何获取url
- 模拟浏览器通过HTTP协议访问url,获取服务器返回的html代码——如何访问
- 解析html字符串(根据一定规则提取需要的数据)——如何解析
1.6 反爬手段
-
User-Agent
User-Agent(用户代理),简称UA,是一个特殊的字符串头,使得服务器能够识别客户使用的操作系统及其版本、CPU类型、浏览器及其版本、浏览器渲染引擎、浏览器语言、浏览器插件等 -
代理IP
西次代理
快代理
高匿名、匿名和透明代理
1. 使用透明代理,对方服务器可以知道使用了代理并且也知道真实IP
2. 使用匿名代理,对方服务器可以知道使用了代理但是不知道真实IP
3. 使用高匿名代理,对方服务器不知道使用了代理更不知道真实IP -
验证码访问
验证码校验,防止爬虫
反制手段:打码平台——云打码平台 -
动态加载页面
站返回的是js数据,而不是 页真实的数据
反制手段:selenium驱动真实的浏览器发送请求 -
数据加密
将数据加密返回
反制手段:分析js代码
文章知识点与官方知识档案匹配,可进一步学习相关知识Python入门技能树 络爬虫urllib211389 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!