网址:闲鱼 - 闲不住?上闲鱼! (goofish.com)
本案例所需要用到的工具和库名如下:
- Pycharm
- requests 可以通过 pip install 库名下载
- time
- execjs 注意此模块的下载的完整库名为 pip install pyexecjs
环境要求:
执行代码要求安装node.js 插件 可以在设置 插件中 下载
分析页面
1.F12 打开开发者界面 or 右键检查
如果是英文 可以按如下设置
点击右上角的三个点
2.点击网络 点Fetch/XHR 监听数据包
3.放回页面点击要抓取的数据 或者在搜索中输入关键字 点击翻页操作
将会返回这种数据包 里面包含我们想要的商品数据内容
加密参数的分析
- 1.鼠标右击该数据包
- 2.复制cURL 注意是bash
- 3.打开爬虫工具库 爬虫工具库-spidertools.cn
- 4.按如图所示粘贴复制
- 5.打开开发者工具 Pycharm 新建py文件 粘贴复制的代码
通过分析测试可以发现 只能获取到当前页面数据 (改变表单的数据 页码可得)
让我们回到这个界面 分析加密参数
解密步骤
- Ctrl+shit+f 快捷键打开搜索 或者如下图方式打开 输入关键字:sign: 按回车
2.找出可能的加密位置 在代码前面打上断点
3.此时不需要刷新页面 因为刷新会导致加载过多的数据包,不好筛选 直接点击下一页
发现此时的K值就是 sign: 的加密密文
进一步分析 i 方法里面的参数
d.token j h c.data
分析结果:
1.d.token 就是cookie里的参数一段数据 后续可以转换成字符串类型 进行分割 获取数据
2. j 就是时间戳 毫秒级别的 到时候用time 模块生成就可以
3.h 为固定的字符串 直接赋值就可以
4. c.data 就是之前生成的表单数据 可以直接拿来用 注意JSON格式的取值
5. 确定好参数之后 我们可以进行扣JS代码 或者通过node.js 下载py第三方库(hashilib)进行解密
鼠标放到 i函数上 点击蓝色的代码 进入方法所在的JS 文件位置
将此代码 完整地全部复制 前面有个收起的标志 可以方便复制
接着 在本地创建一个JS 文件 将复制的代码粘贴进去
在py文件中实现 js 与py的交互
将参数修改完成 请求成功
第一次写博客 多多包涵 会持续学习
标签:代码,py,点击,某鱼,爬取,小白,复制,参数,数据包 From: https://blog.csdn.net/2302_80243887/article/details/144502613