JS逆向:猿人学爬虫比赛第十二题详细题解

实战地址

http://match.yuanrenxue.com/match/12

  

抓包分析

地址栏输入 地址,按下F12并回车,发现数据在这里:

仔细分析,无cookie,只有一个 加密的m参数,控制台atob解码一下:

暂时还无法发现规律,继续请求第二页,并将加密参数解码:

这下规律清楚了,很快,就写出了源代码:


   
  1. import base64
  2. import requests
  3. def btoa(srcstr):
  4. return base64.b64encode(srcstr.encode()).decode()
  5. headers = {
  6. "User-Agent": "yuanrenxue.project",
  7. }
  8. sum = 0
  9. for i in range(1,6):
  10. srcstr = f"yuanrenxue{i}"
  11. params = {
  12. "page":i,
  13. "m":btoa(srcstr),
  14. }
  15. api_url = "http://match.yuanrenxue.com/api/match/12"
  16. r = requests.get(api_url,params = params,headers = headers)
  17. data = r.json()
  18. values = data["data"]
  19. for value in values:
  20. print (value)
  21. sum += value["value"]
  22. print (sum)

运行后,得到结果:

基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。基本没啥难度吧。

文章来源: blog.csdn.net,作者:悦来客栈的老板,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/qq523176585/article/details/109793264

(完)