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

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)
相关推荐
王夏奇1 分钟前
python-pytest学习
python·学习·pytest
祁鱼鱼鱼鱼鱼3 分钟前
Nginx源码编译及平滑升级及回滚
学习
AnalogElectronic5 分钟前
云原生学习day1ubuntu安装docker,基础镜像打包
学习·docker·云原生
weixin_4588726117 分钟前
东华复试OJ二刷复盘6
学习
微露清风27 分钟前
系统性学习Linux-第四讲-进程控制
linux·服务器·学习
01二进制代码漫游日记28 分钟前
C/C++中的内存区域划分
c语言·jvm·数据结构·学习
HAREWORK_FFF29 分钟前
用CAIE认证为简历加分:AI学习者的标准学习周期与规划
人工智能·学习·百度
jjjxxxhhh12336 分钟前
[项目]-搭建一个git服务器呢,完整详细的落地方案
学习
香水5只用六神1 小时前
【TIM】基本定时器定时实验(2)
c语言·开发语言·stm32·单片机·嵌入式硬件·mcu·学习
承渊政道1 小时前
C++学习之旅【C++伸展树介绍以及红黑树的实现】
开发语言·c++·笔记·b树·学习·visual studio