猿人学题库第七题——请求规律检测——采坑式学习

1. 首先先抓包能看到抓取第一页,第二页,第三页,第四页的时候每次 challenge7 请求前面都有个 cityjson 请求,这里后台有个请求规律判断,必须请求 cityjson之后在请求challenge7才能获取数据。

2.发起 cityjson 后会返回 var returnCitySN = {"cip": "ip地址", "timestamp": "1744011432"}; 值,估计后端 会给 ip 做一个标识 和一个时间戳

3.所以逻辑就是先执行 cityjson 请求在执行 challenge7 ,就能返回正常数据了。接下来话不多说直接撸代码。

4.完整代码:

python 复制代码
import requests



headers = {

    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36',
    'x-requested-with': 'XMLHttpRequest',
}
vuels=0
for i in range(1,101):
    data = {
        'page': i,
    }
    requests.post('https://www.python-spider.com/cityjson',  headers=headers)
    response = requests.post('https://www.python-spider.com/api/challenge7',  headers=headers, data=data)
    print(response.json())
    decrypted_numbers = [int(s['value']) for s in response.json()['data']]
    vuels+=sum(decrypted_numbers)
print(vuels)
相关推荐
q***71851 小时前
【golang学习之旅】使用VScode安装配置Go开发环境
vscode·学习·golang
AA陈超5 小时前
UE5笔记:GetWorld()->SpawnActorDeferred()
c++·笔记·学习·ue5·虚幻引擎
生椰拿铁You6 小时前
openxlpy学习笔记
笔记·学习
AA陈超6 小时前
ASC学习笔记0025:移除所有属性集
c++·笔记·学习·ue5·虚幻引擎
p666666666810 小时前
【☀Linux驱动开发笔记☀】新字符设备驱动开发_02
linux·嵌入式硬件·学习
笨鸟笃行10 小时前
百日挑战——单词篇(第二十四天)
学习
烤麻辣烫11 小时前
23种设计模式(新手)-7迪米特原则 合成复用原则
java·开发语言·学习·设计模式·intellij-idea
开开心心_Every12 小时前
Excel图片提取工具,批量导出无限制
学习·pdf·华为云·.net·excel·harmonyos·1024程序员节
9523612 小时前
数据结构-二叉树
java·数据结构·学习
无妄无望12 小时前
ragflow代码学习切片方式(1)docling_parser.py
人工智能·python·学习