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

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)
相关推荐
请你喝好果汁64136 分钟前
统一维度参考文章
学习
xunyan62341 小时前
面向对象(下)-接口应用:代理模式 && 工厂模式
android·java·学习
深蓝海拓1 小时前
自用pyside6项目模板
学习·pyqt
YJlio1 小时前
Active Directory 工具学习笔记(10.13):AdRestore——把误删“拉回现场”的最快姿势
java·笔记·学习
茶猫_1 小时前
C++学习记录-旧题新做-字符串压缩
c语言·c++·学习·算法·leetcode
Non importa1 小时前
用滑动窗口代替暴力枚举:算法新手的第二道砍
java·数据结构·c++·学习·算法·leetcode·哈希算法
以孝治家行动1 小时前
学孝道故事 传家国情怀——慈明学校以孝治家阳光家教中心开展线上学习
学习·以孝治家·正能量
全栈陈序员1 小时前
【Python】基础语法入门(十八)——函数式编程初探:用 `map`、`filter`、`reduce` 和 `lambda` 写出更简洁的代码
开发语言·人工智能·python·学习
浮游本尊2 小时前
React 18.x 学习计划 - 第九天:React 18高级特性和最佳实践
前端·学习·react.js
阿蒙Amon2 小时前
JavaScript学习笔记:5.函数
javascript·笔记·学习