什么是爬虫?
请求网站并提取数据的自动化程序(浏览器就是一个大的爬虫)
爬虫基本流程
HTTP与Response简介
Request 方式:
- GET
- POST
- DELETE、HEAD、OPTIONS、PUT、TRACE
请求URL
统一资源定位符,使用url对图片、文件等唯一定位
请求头
包含请求的配置信息
请求体
请求时额外携带的数据
Response响应码
- 2XX :正常处理
- 3XX :跳转
- 4XX : 用户出错
- 5XX : 服务器出错
响应头
返回的部分信息:内容类型、内容长度、服务器信息、设置Cookie等
响应体:
请求的资源内容(最主要)
解析方式
- 直接处理 : 仅需去空格等简单的处理的情况
- Json解析 : 返回的Json格式数据的情况
- 正则表达式
- BeautifulSoup库
- PyQuery
- XPath
由于js渲染使得我们得到的数据和浏览器有差,如何解决
- 分析Ajax请求
- selinium/WebDriver
- Splash(github)
- P有V、Ghost.py