实战地址
http://match.yuanrenxue.com/match/13
抓包分析
地址栏输入 地址,按下F12并回车,发现数据在这里:
如上分析,这是一个典型的cookie反爬,康康cookie相关的字段是啥:
第一次请求时,返回了一个sessionid的cookie:
第二次请求的cookie是这样的:
由于谷歌浏览器第一次请求看不到结果,因此我推荐用火狐浏览器来进行抓包分析:
可以清楚的看到,第一次请求就是直接设置cookie的JavaScript代码,知道这个以后,可以很快的写出源代码:
import re
import requests
session = requests.Session()
headers = {
"User-Agent": "yuanrenxue.project",
}
url = "http://match.yuanrenxue.com/match/13"
r = session.get(url)
reg = re.compile("'([a-zA-Z0-9=|_])'")
results = reg.findall(r.text)
cookie = ''.join(results)
key,value = cookie.split('=')
session.cookies.set(key,value)
sum = 0
for i in range(1,6):
api_url =f"http://match.yuanrenxue.com/api/match/13?page={i}"
r = session.get(api_url,headers = headers)
data = r.json()
values = data["data"]
for value in values:
print (value)
sum += value["value"]
print (sum)
运行后的结果如下:
这个基本没啥难度,对新手来说,是个不错的cookie反爬案例,大概知道什么是cookie反爬,然后就是使用火狐浏览器来进行抓包分析。
主要考察的是正则的使用吧。