实现爬虫的一般思路
Markdown:
### 实现爬虫的套路
#### 一、准备url
- 准备start_url
- url地址规律不明显,总数不确定
- 通过代码提取下一页的url
- xpath
- 寻找url地址,部分参数在当前的响应中(比如,当前页码数和总的页码数在当前响应中)
- 准备url_list
- 页码总数明确
- url地址规律明显
#### 二、发送请求,获取响应
- 添加随机的User-Agent,反反爬虫
- 添加随机的代理IP,反反爬虫
- 在对方判断出我们是爬虫之后,应该添加更多的headers字段,包括cookie
- cookie的处理可以使用session来解决(requests的session)
- 准备一堆能用的cookie,组成cookie池
- 如果不登录
- 准备刚开始能成功请求对方网站的cookie,即接收对方网站设置在response的cookie
- 下一次请求的时候,使用之前的列表的cookie来请求
- 如果登录
- 准备多个账号
- 使用程序获取每一个账号的cookie
- 之后请求登录之后才能访问的网站,随机的选择cookie
#### 三、提取数据
- 确定数据的位置
- 如果数据在当前的url地址中
- 提取的是列表页的数据
1. 直接请求列表页中的url地址,不用进入详情页
- 提取的是详情页的数据
1. 确定url地址
2. 发送请求
3. 提取数据
4. 返回
- 如果数据不在当前的url地址中
- 在其它的响应中,寻找数据的位置
1. 从network中从上往下找
2. 使用chrome中的过滤,选择除了js、css、img之外的按钮
3. 使用chrome中的search all file,最好搜索数字和英文
- 数据的提取
- re:提取max_time,price,html中的字符串等
- xpath:从html中提取整块的数据,先分组,之后每一组再提取
- json
#### 保存
- 保存在本地:json、text、csv
- 保存在数据库
分类:
Spider
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server如何跟踪自动统计信息更新?
· AI与.NET技术实操系列:使用Catalyst进行自然语言处理
· 分享一个我遇到过的“量子力学”级别的BUG。
· Linux系列:如何调试 malloc 的底层源码
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· 几个技巧,教你去除文章的 AI 味!
· 对象命名为何需要避免'-er'和'-or'后缀
· 关于普通程序员该如何参与AI学习的三个建议以及自己的实践
· AI与.NET技术实操系列(八):使用Catalyst进行自然语言处理
· .NET Core奇技淫巧之WinForm使用Python.NET并打包