当前位置: 首页 > news >正文

爬虫逆向实战(九)--猿人学第十三题

一、数据接口分析

主页地址:猿人学第十三题

1、抓包

通过抓包可以发现数据接口是api/match/13
在这里插入图片描述

2、判断是否有加密参数

  1. 请求参数是否加密?
  2. 请求头是否加密?
  3. 响应是否加密?
  4. cookie是否加密?
    在“cookie”模块中可以发现有一个yuanrenxue_cookie的加密cookie
    在这里插入图片描述

二、加密位置定位

通过查找发现js代码中并没有找到对yuanrenxue_cookie的赋值操作,所以观察抓包。
删除该cookie后,重新刷新页面,发现浏览器请求页面发了两次包,而且第一个包的响应数据,浏览器无法加载
在这里插入图片描述
此时,可以尝试使用python发一个请求给这个地址,观察一下返回的响应数据。通过打印的响应的数据可以发现,第一个包响应的数据就是设置cookie的js代码,并且就只是简单的字符拼接起来。
在这里插入图片描述
源代码:

"""
Email:912917367@qq.com
Date: 2023/8/2 9:57
"""
import reimport requestsheaders = {"authority": "match.yuanrenxue.cn","referer": "https://match.yuanrenxue.cn/match/13","user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36"
}
cookies = {"sessionid": "25yk747fkvd7oiq7oxa6wcagntbj5iso",
}
url = "https://match.yuanrenxue.cn/match/13"
response = requests.get(url, headers=headers, cookies=cookies)re_str = r"\('(.+?)'\)"
cookie = ''.join(re.findall(re_str, response.text))
cookie_value = cookie.split('=')[1]cookies['yuanrenxue_cookie'] = cookie_valueurl = 'https://match.yuanrenxue.cn/api/match/13'
num = 0
for page in range(1, 6):params = {'page': str(page)}if page >= 4:headers['user-agent'] = 'yuanrenxue.project'response = requests.get(url, params=params, cookies=cookies, headers=headers)data = response.json()['data']for item in data:num += item['value']print(num)
http://www.lryc.cn/news/127140.html

相关文章:

  • NeuralNLP-NeuralClassifier的使用记录(一),训练预测自己的【英文文本多分类】
  • Pycharm社区版连接WSL2中的Mysql8.*
  • 前端传递参数时,form-data 和 json 的区别
  • FairyGUI-Unity侧菜单扩展
  • 学习笔记十八:污点、容忍度
  • amis百度前端框架,在js中使用amis写json转页面
  • openEuler安装jdk、openEuler离线安装jdk、openEuler设置jdk、openEuler在线安装
  • Photoshop制作漂亮光泽感3D按钮
  • 【网络爬虫】模拟登录与代理
  • 无线局域网基础知识与架构
  • uniapp tabbar 浏览器调试显示 真机不显示
  • 极智AI | 地平线BPU跑通YOLOv5
  • 循环服务器(同时连接多个客户端,为每个客户端创建一个子进程处理其消息)
  • 【从零学习python 】38.Python包的使用及导入方式
  • docker 容器满了常用处理方法
  • 28、springboot的静态模版(前端页面)重加载和 devtools开发者工具
  • [FPGA IP系列] FPGA常用存储资源大全(RAM、ROM、CAM、SRAM、DRAM、FLASH)
  • Spark SQL优化:NOT IN子查询优化解决
  • 代码审计-java项目-组件漏洞审计
  • 接口测试的测试用例该怎么写呢
  • C语言例题讲解(if语句,循环语句,函数)
  • 深入探索JavaEE单体架构、微服务架构与云原生架构
  • 【STM32】FreeRTOS互斥量学习
  • Docker容器基础
  • Ajax及前端工程化
  • electron的使用和操作
  • Python最重要的数据结构是列表(list)的使用方法
  • 二开ChatGPT微信小程序源码 AI聊天微信小程序源码 适配H5和WEB端 支持AI聊天次数限制
  • VGG简单学习
  • Stable Diffusion - 人物坐姿 (Sitting) 的提示词组合 与 LoRA 和 Embeddings 配置