爬虫——Day1
爬虫——Day1
-
http(超文本传输协议)
- 当用户在地址输入了网址,发送网络的请求是什么
- http的请求方式:
- get请求:比较便捷,但是不安全(明文申请),参数的长度有限制
- post请求(百度云):比较安全、参数数据整体没有限制、可以上传文件
- put(不完全的)、delete(删除一些信息)、head(请求头) 发送网络请求时需要把信息放到请求头里面requestheader 返回数据:response head(请求头):
- Accept:文本的格式
- Accept-Enconding :编码格式
- Connection:连接两端之间的连接情况(比如长连接和短链接)
- Cookie:是否保持在其他网站的登陆的情况(验证的时候使用的)
- Host:域名
- Referer:代表着你是从哪个网页过来的
- User-Agent:用户和浏览器的信息
- put(不完全的)、delete(删除一些信息)、head(请求头) 发送网络请求时需要把信息放到请求头里面requestheader 返回数据:response head(请求头):
- 网络请求的过程:

-
爬虫入门:使用代码模拟用户,批量的发送网络请求,批量的获取数据
- 爬虫的价值:买卖数据(高端领域价格比较高)、数据分析:出数据报告、流量、各种指数(阿里指数、百度指数)
-
合法性:灰色产业
- 政府没有法律规定爬虫是违法的,也没有法律规定爬虫是合法的
- 公司概念:公式让你爬取数据的公司
-
爬虫并不是可以爬取所有东西的,爬虫只能爬取用户允许爬取的东西
爬虫分类:
-
通用爬虫:
-
使用各种搜索引擎
优势:开放性 速度快
劣势:目标不明确
放回内容:基本上百分之九十都是客户不需要的
-
-
聚焦爬虫(学习)(不遵循robots协议)
- 目标明确
- 对用户的需求非常精准
- 返回的的内容很固定
增量式:翻页:从第一页请求到最后一页
Deep深度爬虫:
静态数据:html css
动态数据:js代码,加密的js
robots:是否允许其他爬虫(通用爬虫)爬取某些内容
爬虫和反扒作斗争:资源对等 胜利的永远是爬虫
爬虫的工作原理
- 需要目标的url(找)
- 使用python代码发送请求获取数据(java Go)
- 解析获取到的数据(精确数据)
- 找到新的目标(URL)回到第一步(自动化)
- 数据持久化
- request(第三方)
- 数据解析:xpath bs4
- 数据存取
python3(原生提供的模块):urlib.request
- urlopen:返回一个页面类型 response对象
- 返回response对象
- response.read()
- bytes.decode("utf-")
- get:传参
- 汉字报错:解释器Ascill没有汉字,需要使用url进行汉字转码
- 传参过程一般都是字符串的简单相加
- post:
- handle处理器的自定义
- ulrError

浙公网安备 33010602011771号