爬虫基本流程
- 目标网址
- user_agent身份验证
- 请求头设置
- 请求体数据
- 发送请求并接收响应
- 接收数据简单处理
基本流程中遇到的问题
1. 目标网址的获取
在抓包工具中找到目标网址,或者在浏览器开发者工具中找到网址,不要找错了!
2. 用户主机身份声明
user_agent身份信息,这个比较简单
3.请求头设置
请求头内容用抓包工具可以获得
4.请求体数据
抓包工具中的body表单--一般都是json格式的数据
5.发送请求并接收响应
pycharm中有对应的第三方库
注意Python2和Python3的差异
6.接收数据并简单处理
字符串的切片方法比较好用
正则,xpath应该也可以,但是在这次的案例中没有使用(还不太熟悉)
有道的一些加密措施
- 看到加密措施需要多抓包几次,看看不同的数据哪里会有变化.
- 以有道翻译为例:
- 先多翻译几次看看数据的变化
- 然后换个浏览器或者登录用户再看看还有什么其他的变化
- 找到发生变化的变量之后,需要查看源代码,看加密规则.
- 在本次项目中,看懂了salt的加密规则,但是sign的加密规则没有看懂,有一些语法还不太懂.基本就是靠百度了.
1.salt
salt: 在有道中是一个时间戳+随机数
2.sign
是由四部分内容拼接然后加密的
3.ts
- 是简单的时间戳,但是不是当前时间的时间戳,而是之前的某一天的某一时刻,可能是最新版本的更新时间
4.bv值