当前位置: 首页 > news >正文

【WP】猿人学13_入门级cookie

https://match.yuanrenxue.cn/match/13

在这里插入图片描述

抓包分析

抓包分析发现加密参数是cookie中有一个yuanrenxue_cookie
在这里插入图片描述
cookie过期的时候,就会重新给match/13发包,这个包返回一段js代码,应该是生成cookie
在这里插入图片描述

<script>document.cookie=('y')+('u')+('a')+('n')+('r')+('e')+('n')+('x')+('u')+('e')+('_')+('c')+('o')+('o')+('k')+('i')+('e')+('=')+('1')+('7')+('1')+('7')+('6')+('6')+('0')+('2')+('7')+('4')+('|')+('Y')+('i')+('g')+('i')+('A')+('J')+('D')+('w')+('G')+('L')+('x')+('6')+('5')+('Y')+('t')+('Y')+('C')+('D')+('U')+('D')+('u')+('A')+('X')+('3')+('7')+('j')+('H')+('S')+('W')+('w')+('2')+('u')+('7')+('Y')+('w')+('U')+('b')+('C')+('V')+('r')+('S')+('A')+('a')+('s')+('l')+('9')+('O')+('K')+('G')+('G')+('5')+('w')+('4')+('i')+('6')+('V')+('l')+('F')+('i')+('r')+('r')+('i')+';path=/';location.href=location.pathname+location.search</script>

这么看来还不是纯算,而是要发包单独获取。

构建Python代码获取cookie

import reimport execjs
import requestsheaders = {"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.6261.95 Safari/537.36"
}
cookies = {
}
url = "https://match.yuanrenxue.cn/match/13"
response = requests.get(url, headers=headers, cookies=cookies)
cookieGenerateCode = "(function f() { return " + re.search("\<script\>document\.cookie\=(.*?)\+\'\;path\=\/\'\;", response.text).group(1) + "})()"
yuanrenxue_cookie = execjs.eval(cookieGenerateCode)

下面构建爬虫代码

import reimport execjs
import requestsheaders = {"authority": "match.yuanrenxue.cn","referer": "https://match.yuanrenxue.cn/match/13","user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36"
}
cookies = {"sessionid": "zwy0uz1vd0ge1e42310i34b37584m1lj", }url = "https://match.yuanrenxue.cn/match/13"
response = requests.get(url, cookies=cookies)
cookieGenerateCode = "(function f() { return " + re.search("\<script\>document\.cookie\=(.*?)\+\'\;path\=\/\'\;", response.text).group(1) + "})()"
yuanrenxue_cookie = execjs.eval(cookieGenerateCode).split('=')[-1]
cookies["yuanrenxue_cookie"] = yuanrenxue_cookieret = 0
for pageIndex in range(1, 6):url = "https://match.yuanrenxue.cn/api/match/13"params = {"page": str(pageIndex)}response = requests.get(url, params=params, cookies=cookies, headers=headers)for item in response.json()["data"]:ret += item.get("value")print(ret)

这里有个易错点,很容易犯错!!在这里插入图片描述
第一次请求cookie的时候一定要带上自己的sessionid,否则拿到的cookie 和自己sessionid不匹配,会显示page not found

在这里插入图片描述

http://www.lryc.cn/news/365052.html

相关文章:

  • 分享一款提取抖音小店商家电话的软件使用教程
  • 反转链表的三种方法--面试必考(图例超详细解析,小白一看就会!!!)
  • Springboot注意点
  • 数组和指针的联系(C语言)
  • 安全区域边界
  • 力扣每日一题 6/6
  • 游戏心理学Day05
  • 【C、C++编译工具】CLion工具介绍与安装
  • LabVIEW中进行步进电机的位置控制
  • 目标检测-AnyLabeling标注格式转换成YOLO格式
  • MongoDB管理内存使用
  • 【Elasticsearch】IK分词器的下载及使用
  • Hyper-SD: diffusion实时出图,一步搞定,字节出品
  • :长亭雷池社区版动态防护体验测评
  • 数据结构复习
  • 小世界网络生成及其分析
  • Flutter基础 -- Flutter布局练习(小项目)
  • 详解布隆过滤器,实现分布式布隆过滤器
  • 程序员职业素养:AI新时代下的机遇与挑战
  • 智能管理,无忧报修——高校校园报事报修系统小程序全解析
  • nc解决自定义参照字段前台保存后只显示主键的问题
  • 鸿蒙全栈开发-一文读懂鸿蒙同模块不同模块下的UIAbility跳转详解
  • 【Python】使用 SQLObject orm 库快速将接口数据存入数据库
  • @EnableResourceServer资源服务注解源码分析
  • SpringBoot实现图片文件上传和回显的两种方式
  • 进程和计划任务以及步骤
  • 使用Python实现深度学习模型:序列到序列模型(Seq2Seq)
  • 力扣283. 移动零
  • 二叉树的顺序结构(堆的实现)
  • 2024大模型如何学习【附学习资料】