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

逆向案例五、爬取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在第一页的数据中可以获取。 

 

 

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

相关文章:

  • 010-原型链
  • Electron-builder打包安装包——编译篇
  • Red Hat系统升级内核版本
  • Java集合set之HashSet、LinkedHashSet、TreeSet的区别?
  • 全方位碾压chatGPT4的全球最强模型Claude 3发布!速通指南在此!保姆级教学拿脚都能学会!
  • upload-Labs靶场“11-15”关通关教程
  • linux-rpm命令
  • 如何利用python实现自己的modbus-tcp库
  • linux系统-----------搭建LNMP 架构
  • C++中boost库的安装及使用(Windows)
  • CPP编程-CPP11中的内存管理策略模型与名称空间管理探幽(时隔一年,再谈C++抽象内存模型)
  • springboot项目整合minio实现文件的分布式存储
  • 微信小程序开发学习笔记《19》uni-app框架-配置小程序分包与轮播图跳转
  • Python内置模块
  • WordPress建站入门教程:小皮面板phpstudy如何安装PHP和切换php版本?
  • 用友 NC saveDoc.ajax 任意文件上传漏洞复现
  • 如何使用达摩盘
  • 网络编程的学习
  • 【Mining Data】收集数据(使用 Python 挖掘 Twitter 数据)
  • 2024京津冀光伏展
  • 在C#中使用Linq
  • Swing程序设计(11)动作事件监听器,焦点事件监听器
  • Python 开发图形界面程序
  • 百度搜索引擎SEO优化方法
  • 一文了解docker与k8s
  • Linux基础——进程控制
  • 网络工程师笔记8
  • 从零学算法128
  • 2024免费mac苹果电脑的清理和维护软件CleanMyMac X
  • Python反射机制在实际场景中的应用