python爬虫之逆向破解_Python爬虫进阶之APP逆向(二)

最近有朋友在做新闻资讯类的 app 爬虫,也许大多数人都会认为,一个新闻资讯 app 不会有什么反爬吧。

恰恰相反,当你想爬一条新闻的时候都有请求参数加密,可见现在反爬的严重性。

分析

国际惯例先抓包,万幸抓包非常顺利,抓包结果如下:

可以看到请求头里面有加密的参数,下面我们通过反编译来破解这个参数,同时用 Python 代码来实现加密

这样我们才能愉快的爬爬爬!

反编译破解

反编译之后我们就根据请求参数来寻找加密的源码,同时需要注意下搜索的技巧

比如同一个参数,如果加上引号会极大的减少我们的工作量。

可以看到同样一个参数,按后面的搜索结果来找加密源码,会大大减少我们的工作量

最后在第三行找到了加密参数的出处

其中在执行某某函数的地方可以点进去,结果如下:

md5 应该熟悉吧,剩下就是找出被加密的数据了。返回再看,是三个数据组合的 md5

粗略看一下这个参数是设备号,不做校验,我们可以直接取默认值

IMEINNNNNNNNNNNNNNN-IMSI460NNNNNNNNNNNN

再加上时间戳,和一个 key。刚好和我们抓包里面的请求头那几个参数对应上

分析完之后,当然是先用代码验证一下,如果有问题再返回回来细看。

验证

下面是构造加密参数 signature 的算法

1encrypt = f"{uuid}&&{timestamp}&&f1190aca-d08e-4041-8666-29931cd89dde"

其中 udid 是手机设备号和随机数按特定的方式的组合,timestamp 是时间戳

1signature = hashlib.md5(encrypt.encode("utf-8")).hexdigest()

上面就是 signature 的加密 。我们用代码请求一下来验证结果

能 GET 到数据,说明用 python 转换后的加密算法是对的!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/552238.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微型计算机的系统组成图,微型计算机系统结构图.doc

时钟复位DBCPUABCBROMRAM定时计数器中断系统I/O口外部设备微型计算机系统结构图图2.1 基于单片机的电气串级调速系统原理图基于单片机的机械串级调速系统原理图图2-1双闭环控制的串级调速系统原理图----图4-1电流环动态结构图及其化简ASRnASR____n图4-2 转速闭环的动态结构图及…

在python中可以使用for作为变量名对吗_python能用一个变量的值作为另一个变量的变量名吗?...

A [零, 一, 二, 三] B [zero, one, two, three] for index, item in enumerate(A): print(变量A的赋值是 *{}*, 变量B的赋值是 *{}*.format(item, B[index])) try: print(eval(item)) except Exception as err: print(错误原因:{}.format(err)) exec({} B[index].format(ite…

关于csgo的观看录像fps低_CSGO:Ququ带队击败LQ豪取五连冠,8次MVP闪耀全场

电子竞技热点资讯,敬请关注老年人三旬!自从CSGO这款游戏上市之后,在整个FPS领域内就一直处于顶流位置,这款游戏对于所有热爱射击游戏的玩家来说,不但是经典作品《半条命》的延续,更是一款对玩家要求极高的游…

计算机数学基础 刘树利,计算机数学基础课件教学课件作者刘树利11课件.ppt

计算机数学基础课件教学课件作者刘树利11课件.ppt第十一章 线性方程组 第十一章 线性方程组 后页 首页 前页 后页 首页 前页 基本要求、重点难点 11.1 线性方程组的消元法 11.2 线性方程组解的结构 11.3 线性代数的应用实例 11.4 演示与实验十 ? 基本要求 ? 理解线性方…

python 3d大数据可视化_基于Python的数据可视化库pyecharts介绍

什么是pyecharts? pyecharts 是一个用于生成 Echarts 图表的类库。 echarts 是百度开源的一个数据可视化 JS 库,主要用于数据可视化。pyecharts 是一个用于生成 Echarts 图表的类库。实际上就是 Echarts 与 Python 的对接。 使用 pyecharts 可以生成独立…

dev多行注释_Python代码注释的用法和意义

01. 注释的作用在大多数编程语言中,注释都是一项很有用的功能。在一些简单的程序中只包含Python代码,但随着程序越来越大、越来越复杂,就应在其中添加说明,对你解决问题的方法进行大致的阐述。注释让你能够使用熟悉的自然语言在程…

江苏单招试题计算机原理及答案,江苏省对口单招计算机组装与维修计算机原理考题分类汇总.docx...

精品文档精品文档PAGEPAGE #欢迎下载盐城市2012年普通高校单独招生第二次调研考试试卷计算机应用专业综合理论一、单项选择题原码、反码、补码1.在机器数的三种表示形式中,符号位可以和数值位一起参加运算的是 )反码、补码A)原码 B )补码 C )反码 中断2.下列各类中断…

python的数据库_python数据库操作-mysql数据库

一:连接 1:本地连接 mysql -u用户名 -p密码 2:连接远程服务器 mysql -u用户名 -p密码 -hip地址 -P端口号 线下修改远程服务端上部署的mysql服务器 二:创建数据库 create database 名字 utf8; 三:显示数据库 show datab…

svn如何取消某个文件的版本管理_微服务架构如何统一管理工程配置文件

面临的问题在分布式微服务架构系统中,业务和系统功能被拆分成了几十甚至上百个服务实例。每个服务实例就是以往单体应用时代的一个独立部署的工程。每个工程都需要自己独立的启动加载和运行时配置文件。在项目开发的过程中,我们不可避免的会涉及到配置文…

计算机组织与结构实验,计算机组织与结构实验报告 CQUPT

计算机组织与结构实验报告 重庆邮电大学计算机组织与结构实验报告目录实验一 Hamming码 .................................................. 2 实验二乘法器 ....................................................... 4 实验三时序部件 ...................................…

linux 线程_Linux 多线程编程(不限Linux)

前言线程?为什么有了进程还需要线程呢,他们有什么区别?使用线程有什么优势呢?还有多线程编程的一些细节问题,如线程之间怎样同步、互斥,这些东西将在本文中介绍。我在某QQ群里见到这样一道面试题&#xff1…

springboot导包显示不存在_基础篇:Spring Boot入门体验(图文教程)

优质文章,及时送达什么是 Spring Boot?Spring Boot 是由 Pivotal 团队提供的全新框架。Spring Boot 是所有基于 Spring Framework 5.0 开发的项目的起点。Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应用程序并且尽可能减少你的配置文件。设计…

计算机x线影像ppt,计算机X线摄影ppt课件

计算机X线摄影ComputedRadiography,CR,计算机X线摄影,传统的X线成像是经X射线曝光,将影像信息记录在胶片上,在显、定影处理后,在照片上显示影像计算机X线成像是将影像信息记录在影像板(imagingplate,IP)上,…

plsql查看用户权限_权限功能

几乎所有的后台都会有权限这个功能,权限也是后台管理系统很重要的一项功能,可以提高系统的安全性,也可以很好的使每个操作人员清晰地找到自己所对应的功能。一般来说,系统中只有最高权限、或者这只权限的管理员可以分发设置其余权…

计算机教学论研究生,课程与教学论(计算机)专业硕士学位研究生培养方案

课程与教学论(计算机)专业硕士学位研究生培养方案一、学科专业简介计算机教学论以教育科学的基本理论为指导,探索计算机教育的的基本理论和实践问题,探讨现代教育理论视野中的计算机课程与教育改革。研究内容包括:计算机专业课程设置和教材建…

七度空间338多少钱一包_2020黄果树香烟一包多少钱 黄果树香烟价格表图排行榜...

阅读本文前,请您先点击上面的“蓝色字体”,再点击“关注”,这样您就可以继续免费收到文章了。每天都会有分享,都是免费订阅,请您放心关注。注图文来源网络,侵删 …

eslint vscode 自动格式化_使用 VSCode 的必备三大神器,这才是开发 Vue 的真香解决方案...

现在用 VSCode 开发 Vue.js 应用几乎已经是前端的标配了,但很多时候我们看到的代码混乱不堪,作为一个前端工程师,单引号双引号乱用,一段有分号一段没有分号,有的地方有逗号有的地方没有逗号,空格回车都对不…

加固您的网站服务器,IIS Web服务器安全加固

1.将\System32\cmd.exe转移到其他目录或更名;2.系统帐号尽量少,更改默认帐户名(如Administrator)和描述,密码尽量复杂;3.拒绝通过网络访问该计算机(匿名登录;内置管理员帐户;Support_388945a0;G…

eclipse复制代码连接数据库404_推荐一款免费的数据库管理工具,比Navicat还要好用,功能还很强大...

作者:不剪发的Tony老师blog.csdn.net/horses/article/details/89683422DBeaver 是一个基于 Java 开发,免费开源的通用数据库管理和开发工具,使用非常友好的 ASL 协议。可以通过官方网站或者 Github 进行下载。由于 DBeaver 基于 Java 开发&am…

炒菜机器人放食材的顺序_珠江新城有了首家机器人餐厅,40多台机器人提供服务...

大洋网讯 在广州最繁华的CBD珠江新城,历史性有了一家机器人餐厅。这是广州日报全媒体记者昨日获悉的信息。记者赶往其中看见,这家新开的中餐厅看起来与众不同,厨房里没有铛铛的切菜声,没有此起彼伏的传菜声,更没有缭绕…