文章目录
- (一)写爬虫的一些套路
-
- 1. 准备url
-
- 1.1 准备start_url
-
- (1) url地址规律不明显,或总数不确定时
- (2)通过代码提取下一页的url
-
- 1)xpath(重点)
- 2)寻找url地址,部分参数在当前的响应中,比如,当前页码和总的页码数在当前的响应中
- 1.2 准备 url_list
-
- (1) 页码总数明确
- (2)url地址规律明显
- 2. 发送请求,获取响应
-
- 2.1 添加随机的User-Agent,反反爬虫
- 2.2 添加随机的代理Ip,反反爬虫
- 2.3 在对方判断出我们是爬虫之后,应该添加更多的headers字段,包括cookie
- 2.4 cookie的处理可以使用session来解决
- 2.5 准备一堆能用的cookie,组成cookie池
-
- (1)不需要登录的情况
-
- 1)准备刚开始能够成功请求对方网站的cookie,即接收对方网站设置在response的cookie
- 2)下一次请求的时候,使用之前的列表中的cookie来请求
- (2)需要登录的情况
-
- 1)准备多个账号
- 2)使用程序获取每个账号的cookie
- 3)之后请求登录之后才能访问的网站随机的选择cookie
- 3. 提取数据
-
- 3.1 确定数据的位置
-
- (1)如果数据在当前的url地址中
-
- 1)提取的是列表页的数据
-
- ① 直接请求列表页的url地址,不用进入详情页
- 2)提取的是详情页的数据
-
- ① 确定url
- ② 发送请求
- ③ 提取数据
- ④ 返回
- (2)如果数据不在当前的url地址中
-
- 1)在其他的响应中,寻找数据的位置
-
- ① 从network中从上往下找
- ② 使用chrome中的过滤条件,选择出了js,css,img之外的按钮
- ③ 使用chrome的search all file,搜索数字和英文,(中文有可能会给转码,有些时候不能直接搜索到中文)
- 3.2 数据的提取(重点考虑xpath)
-
- (1)xpath,从html中提取整块的数据,先分组,之后每一组再提取
- (2)re(正则表达式),提取max_time,price,html中的json字符串
- (3)json
- 4. 保存
-
- 4.1 保存在本地,text,json,csv
- 4.2 保存在数据库 mysql,MongoDB,Redis

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/23425.html