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

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)
相关推荐
光影少年17 小时前
WebGIS 和GIS学习路线图
学习·前端框架·webgl
我想我不够好。18 小时前
学会思考问题
学习
im_AMBER18 小时前
Leetcode 65 固定长度窗口 | 中心辐射型固定窗口
笔记·学习·算法·leetcode
d111111111d18 小时前
STM32外设学习--PWR电源控制
笔记·stm32·单片机·嵌入式硬件·学习
jackaso18 小时前
ES6 学习笔记2
前端·学习·es6
不羁的木木18 小时前
【开源鸿蒙跨平台开发学习笔记】Day06:React Native 在 OpenHarmony 开发中的自定义组件开发
笔记·学习·harmonyos
a***813918 小时前
【Go】Go语言基础学习(Go安装配置、基础语法)
服务器·学习·golang
hello1114-18 小时前
Git 学习打卡Day1-基础、高级、远程仓库初步
git·学习·github
向上_5035829118 小时前
Android之kotlin学习
开发语言·学习·kotlin
xiaoxiaoxiaolll18 小时前
《Light: Science & Applications》:LSTM实现高灵敏度、宽范围光纤折射率测量|AI赋能光学传感
学习