逆向案例五、爬取b站评论,表单MD5加密
1.便捷写爬虫网站:
Convert curl commands to code
使用流程:又点击想要抓的包,复制URL(base)格式复制

在上面链接中粘贴即可
2.找到含有评论的包(即main?oid):观察表单发现两处参数在变化,即wts和w_rid,且它们是加密的

遇到这这种,都是在下方serach框搜索关键参数w_rid

进入第一个js文件
在w_rid处打上断点,并下滑页面使之暂停,观察代码,wts由Ft.toString()得来,而Ft = Math.round(Date.now() / 1e3
这段代码是用来获取当前时间的 Unix 时间戳,并将其转换为秒数。具体解释如下:
Date.now(): 返回当前时间的毫秒数,是相对于 1970 年 1 月 1 日午夜(UTC 时间)的时间戳。/ 1e3: 将毫秒数转换为秒数,即除以 1000。Math.round(): 对除以 1000后的秒数进行四舍五入,确保结果为整数。
因此,整体来说,Ft 变量的值表示了当前时间的 Unix 时间戳(秒数)。
用python实现:
import time# 获取当前时间的 Unix 时间戳(秒数)
Ft = round(time.time())
分析w_rid,它有MD5加密得来,Wt经过实验,在控制台打印,是一个固定值

Jt由en变字符串处理而得来,打印一下,发现其与wts还有关系

再看,发现其就是由url表单变过来的:
代码实现:
import time
import hashlib
import requests
# 获得当前wts的函数
def get_w_rid(wts):MD5 = hashlib.md5()Jt = f'mode=3&oid=1651458406&pagination_str=%7B%22offset%22%3A%22%7B%5C%22type%5C%22%3A1%2C%5C%22direction%5C%22%3A1%2C%5C%22session_id%5C%22%3A%5C%221750756505440224%5C%22%2C%5C%22data%5C%22%3A%7B%7D%7D%22%7D&plat=1&type=1&web_location=1315875&wts={wts}ea1db124af3c7062474693fa704f4ff8'print(Jt)MD5.update(Jt.encode('utf-8'))return MD5.hexdigest()
wts = get_wts()
w_rid = get_w_rid(wts)
print(w_rid)
print(wts)
输入对应的wts,上述代码返回的w_rid与表单一致

但注意的是,这些都是第一页往后的规律,第一页,Jt是什么样的我没办法得到,得不出第一页的w_rid,在第一页后的表单是这样的,
pagination_str是不变的,而其中session_id在第一页的数据中可以获取。
相关文章:
逆向案例五、爬取b站评论,表单MD5加密
1.便捷写爬虫网站: Convert curl commands to code 使用流程:又点击想要抓的包,复制URL(base)格式复制 在上面链接中粘贴即可 2.找到含有评论的包(即main?oid):观察表单发现两处参数在变化&…...
010-原型链
原型链 1、概念2、原理3、new 操作符原理4、应用 1、概念 原型链:javascript的继承机制,是指获取JavaScript对象的属性会顺着其_proto_的指向寻找,直至找到Object.prototype上。 2、原理 💡 Tips:构造函数 Fn&#…...
Electron-builder打包安装包——编译篇
突然有一天想打包个桌面程序,没有打包过,经过九牛二虎之力终于打包出来,在此感谢那些热于分享的前辈! 本篇只讲打包运行和出现的问题 一、准备工作:提前下载相关资源包,否则在国内环境下可能因为网络问题…...
Red Hat系统升级内核版本
查看当前内核版本 uneme -r yum list kernel升级内核 yum update -y kernel检查升级后的内核版本 uneme -r yum list kernel升级系统中已安装的软件包到最新版本(过程时间较长) 目前只升级了系统内核,系统相关的安装包还是老的࿰…...
Java集合set之HashSet、LinkedHashSet、TreeSet的区别?
Java的集合中主要由List,Set,Queue,Map构成,Set特点:存取无序,不可以存放重复的元素,不可以用下标对元素进行操作。 HashSet 作为Set容器的代表子类,HashSet经常被用到,…...
全方位碾压chatGPT4的全球最强模型Claude 3发布!速通指南在此!保姆级教学拿脚都能学会!
🎉🎉欢迎光临,终于等到你啦🎉🎉 🏅我是苏泽,一位对技术充满热情的探索者和分享者。🚀🚀 🌟持续更新的专栏《Spring 狂野之旅:从入门到入魔》 &a…...
upload-Labs靶场“11-15”关通关教程
君衍. 一、第十一关 %00截断GET上传1、源码分析2、%00截断GET上传 二、第十二关 %00截断POST上传1、源码分析2、%00截断POST上传 三、第十三关 文件头检测绕过1、源码分析2、文件头检测绕过 四、第十四关 图片检测绕过上传1、源码分析2、图片马绕过上传 五、第十五关 图片检测绕…...
linux-rpm命令
rpm命令管理程序包:安装、升级、卸载、查询和校验 1、忽略依赖关系安装/卸载包 安装:rpm -Uvh 软件包名 --nodeps 卸载:rpm -e 软件包名 --nodes!!!!慎用!!!…...
如何利用python实现自己的modbus-tcp库
如果你想使用纯Socket编程来实现Modbus TCP通讯,而不是依赖于Modbus库,你需要理解Modbus TCP协议的细节,并能够手动构建和解析Modbus消息。以下是一个简单的示例,展示了如何使用Python的socket库来实现Modbus TCP通讯: 了解Modbus TCP协议: Modbus TCP协议使用TCP作为底层…...
linux系统-----------搭建LNMP 架构
PHP(Hypertext Preprocessor 超文本预处理器)是通用服务器端脚本编程语言,主要用于web开发实现动态web页面,也是最早实现将脚本嵌入HTML源码文档中的服务器端脚本语言之一。同时,php还提供了一个命令行接口,因此,其也可…...
C++中boost库的安装及使用(Windows)
Boost库的安装及使用 引言使用现有的boost库安装及使用引言 C++开发中经常会用到boost库,本文记录一下Windows上boost在visual studio2019上的使用。 Boost库是一个跨平台的C++库集合,旨在为C++开发者提供一系列高质量的通用功能。不同的Visual Studio(VS)版本并不要求安…...
CPP编程-CPP11中的内存管理策略模型与名称空间管理探幽(时隔一年,再谈C++抽象内存模型)
CPP编程-CPP11中的内存管理策略模型与名称空间管理探幽 CPP的四大内存分区模型 在 C 中,**内存分区是一种模型,用于描述程序运行时内存的逻辑组织方式,但在底层操作系统中,并不存在严格意义上的内存分区。**操作系统通常将内存分…...
springboot项目整合minio实现文件的分布式存储
minio是一款分布式存储系统,上一篇详细介绍了minio在windows环境下的搭建集群并通过nginx实现负载均衡,这里简单介绍下springboot项目整合minio并实现文件的上传下载删除等操作。 一、依赖的引入 1.1、maven项目 <dependency><groupId>io…...
微信小程序开发学习笔记《19》uni-app框架-配置小程序分包与轮播图跳转
微信小程序开发学习笔记《19》uni-app框架-配置小程序分包与轮播图跳转 博主正在学习微信小程序开发,希望记录自己学习过程同时与广大网友共同学习讨论。建议仔细阅读uni-app对应官方文档 一、配置小程序分包 分包可以减少小程序首次启动时的加载时间 为此&#…...
Python内置模块
目录 什么是模块 模块分类 通过模块创建者分类 系统内置模块 第三方模块 在线安装 离线安装 模块导入 math和random模块介绍 math模块 random模块 什么是模块 在我们编写程序时,需要导入包。例如随机数的产生,需要import random。import XXX&…...
WordPress建站入门教程:小皮面板phpstudy如何安装PHP和切换php版本?
小皮面板phpstudy支持的PHP版本有很多,包括5.2.17、5.3.29、5.4.45、5.5.9、5.6.9、7.0.9、7.1.9、7.2.9、7.3.4、7.3.9、7.4.3、8.0.2、8.2.9。那么我们如何安装其他的php版本和切换网站的php版本呢?只需要简单几步即可,具体如下:…...
用友 NC saveDoc.ajax 任意文件上传漏洞复现
0x01 产品简介 用友NC是一款企业级ERP软件。作为一种信息化管理工具,用友NC提供了一系列业务管理模块,包括财务会计、采购管理、销售管理、物料管理、生产计划和人力资源管理等,帮助企业实现数字化转型和高效管理。 0x02 漏洞概述 用友 NC saveDoc.ajax接口处存在任意文件…...
如何使用达摩盘
目录 1.定义 2.功能:圈人群、画像洞察、同步到站内渠道投放; 1.定义 是阿里妈妈基于商业化营销场景打造的人群精细化运营定向中台,涵盖消费行为、兴趣偏好、地理位置等海量数据标签,为商家提供个性化人群圈选,识别店…...
网络编程的学习
思维导图 多路复用代码练习 select完成TCP并发服务器 #include<myhead.h> #define SER_IP "192.168.125.73" //服务器IP #define SER_PORT 8888 //服务器端口号int main(int argc, const char *argv[]) {//1、创建用于监听的套接字int sfd -1;s…...
【Mining Data】收集数据(使用 Python 挖掘 Twitter 数据)
@[TOC](【Mining Data】收集数据(使用 Python 挖掘 Twitter 数据)) 具体步骤 第一步是注册您的应用程序。特别是,您需要将浏览器指向 http://apps.twitter.com,登录 Twitter(如果您尚未登录)并注册新应用程序。您现在可以为您的应用程序选择名称和描述(例如“Mining Demo”…...
设计个人日常用品消耗周期测算程序,测算洗护生活用品消耗速度,提前规划采购时间。
个人日常用品消耗周期测算程序——基于 Python 的生活消耗建模实验一、实际应用场景描述在城市生活中,大多数人都会遇到这些情况:- 洗发水、牙膏、洗衣液突然用完- 临时补货导致时间成本增加- 囤货过多造成过期或占用空间- 无法判断“多久买一次才合理”…...
氨基酸表活洁面慕斯科普
一、什么是洁面慕斯洁面慕斯是一种预发泡型的洁面产品,和传统膏状、洗面奶不同,它从泵头挤出来就是细腻绵密的泡沫,不需要消费者手动打泡,使用起来更加方便快捷。从成分体系来看,洁面慕斯本质还是表面活性剂清洁产品&a…...
G-Helper:华硕笔记本轻量化控制工具完整指南
G-Helper:华硕笔记本轻量化控制工具完整指南 【免费下载链接】g-helper Lightweight Armoury Crate alternative for Asus laptops with nearly the same functionality. Works with ROG Zephyrus, Flow, TUF, Strix, Scar, ProArt, Vivobook, Zenbook, Expertbook,…...
显卡选购指南:从显存、位宽到AI创作,2023年如何避开参数陷阱?
1. 显卡市场新动态:价格、定位与玩家选择的博弈最近显卡圈子里有点热闹,但这份热闹背后,更多是玩家们的困惑和观望。NVIDIA悄无声息地给RTX 4060 Ti加了个“大显存”的版本,价格直接上探到3899元,比8GB版贵出700块。这…...
别再只会下载了!手把手教你用STLINK-V3调试STM32F4,实战断点与寄存器查看
从烧录器到调试利器:STLINK-V3在STM32开发中的高阶应用 第一次接触STM32开发时,我们往往把STLINK当作一个简单的程序烧录工具——连接SWD接口,点击下载按钮,等待进度条走完。这种认知让很多开发者错过了STLINK最强大的功能&#x…...
告别‘天书’!手把手教你用vdex2dex、odex2smali等工具,把Android应用的vdex/odex/cdex转成可读的dex文件
Android逆向工程实战:从vdex/odex/cdex到可读dex的完整指南 当你兴致勃勃地打开一个APK文件准备分析时,却发现里面只有vdex、odex或cdex文件,用JADX直接打开全是乱码——这种挫败感每个逆向工程师都经历过。本文将带你一步步破解这些"天…...
VS Code 轻量自动化实战:Trae 集成 3 步配置与 5 个高频任务模板
1. 三步集成不是魔法,是可控的上下文锚点 大多数人第一次在 VS Code 里配 Trae,会直接打开官方文档翻到「安装」章节,复制粘贴几行命令,重启编辑器,然后对着空白的侧边栏发呆——它没反应。不是插件没装好,也不是网络问题。是我试过三次才意识到:Trae 的「激活」不靠重…...
Rust内存安全:所有权、借用与生命周期深度解析
Rust内存安全:所有权、借用与生命周期深度解析 引言 在Rust开发中,内存安全是其最核心的特性。作为一名从Python转向Rust的后端开发者,我深刻体会到Rust在内存安全方面的革命性设计。Rust通过所有权系统、借用机制和生命周期注解࿰…...
毕设救星:手把手教你用Android Studio和OkHttp3搞定OneNET新版API数据获取(附完整Java代码)
物联网毕设实战:Android Studio对接OneNET新版API全流程解析 在物联网相关专业的毕业设计中,如何快速构建一个能实际运行的设备数据监控APP往往是让本科生头疼的难题。本文将手把手带你完成从零开始的完整开发流程,重点解决三个核心痛点&…...
别再混淆了!一文理清华为云Stack里FusionStorage、OceanStor Pacific与存储服务的对应关系
华为云Stack存储产品演进史:从FusionStorage到OceanStor Pacific的技术脉络解析 在云计算基础设施领域,存储系统的命名规则往往反映了技术架构的迭代路径。华为云Stack作为企业级混合云解决方案,其存储产品线经历了多次重大技术革新与品牌整合…...
