业界动态
中国空气质量在线监测分析平台数据获取
2024-10-31 17:15

网站:https://www.aqistudy.cn/historydata/monthdata.php
空气质量在线检测分析平台
这个网站的数据获取我在网上查过别人的教程,比较繁琐,我有一个比较简单的方法获取数据,现在分享给大家
目标数据
在这里插入图片描述

中国空气质量在线监测分析平台数据获取

1.网站禁用F12和右键 —> 右上角三点 —>更多工具 —> 开发者工具

2.定时器debugger —> 一律不在此处暂停
在这里插入图片描述
如果这样弄之后被网页检测到,刷新即可

3.分析数据接口,找xhr请求,
在这里插入图片描述
接口是https://www.aqistudy.cn/historydata/api/historyapi.php,点击载荷和预览可知,发送请求的数据和接受的数据都是加密的,因此我们需要分析发送数据和接收数据的加密过程,模拟发送请求获取天气数据并解密

  1. 打xhr断点

在这里插入图片描述

2.然后在原网页上查询别的城市天气数据,再查南京不会有xhr请求(估计是缓存了
在这里插入图片描述
它断住了,然后我们就在调用堆栈里分析,看能不能找到加密的函数,走到ajax函数
在这里插入图片描述

之前分析数据接口时可知, 拿数据的xhr请求为post请求,字段名即为:hA4Nse2cT, 由此可知pKmSFk8就是密文,它是怎么生成 的
看上面,就是poPBVxzNuafY8Yu函数所以我们要进入 poPBVxzNuafY8Yu 函数并分析加密过程,在上面那一句打上断点,重新发送请求
在这里插入图片描述
我们就进来了这个函数,分析这个函数可知,这个函数最后返回一个对象 这个对象有
appId —> 写死的 “3c9208efcfb2f5b843eec8d96de6d48a”
method—> 写死的 “GETMONTHDATA”
timestamp—> 时间戳
clienttype —>写死的“WEB”
object—> 也是一个对象,里面的参数我们查询的城市
secret—> hex_md5(传入上面的参数和根据键排序后的oNLhNQ对象),我觉得这个hex_md5就是MD5加密,于是打开nodejs尝试一下
在这里插入图片描述
把这些参数都弄进去
在这里插入图片描述
在这里插入图片描述
由此可以看到,hex_md5就是正宗的MD5加密,没有什么改动的地方
接下来就是base64和aes加密,
在这里插入图片描述
当然我们也需要验证base64有没有被修改过,我验证了一下就是正宗的base64
这里要用到AES.encrypt ,我们进入这个函数看看

把网站的aes加解密扣下来,形成我的完整的模拟加密代码

这里我们选天津,看我们py拿到的数据跟网站发送拿到的是不是一样的

网站的在这里插入图片描述

我拿到的
在这里插入图片描述

可以发现是一样的,所以至此完成了发送数据的模拟加密


接下来我们探索怎么解密拿到的数据
在这里插入图片描述
这时dGHdO还是密文
在这里插入图片描述
这里已是明文
所以可知,dxvERkeEvHbS是解密函数, 然后我们再发一次请求,进入这个函数单步执行,
在这里插入图片描述
在这一页面上方,我们也是找到了解密函数,可知,把数据经过base64 -> des ->aes ->base64 这四次解密过程即可
于是我们在nodejs上模拟解密,加上之前的模拟加密代码
构成了这一次网站js逆向的完整js代码,需要安装crypto-js
没有则运行

然后是构造请求和解析解密后数据的py代码
执行js代码要PyExecJS2库,没有则执行,

结果
在这里插入图片描述
如果有这个报错
在这里插入图片描述
字典中没有找到这个健,自己解析一下这个字典即可
如果要获取每天的数据,按下面的步骤修改代码即可
在这里插入图片描述
在这里插入图片描述
结果
在这里插入图片描述
如果出现评论区中的execjs._exceptions.ProgramError: SyntaxError问题,就是那个库默认使用的jscript,无法识别require es6等语法
除了那个兄弟提出的解决办法还可以直接安装pycharm专业版,然后安装nodejs插件,就可以给pacharm指定nodejs环境了,直接运行就没问题,难怪我没遇到过这个报错。

    以上就是本篇文章【中国空气质量在线监测分析平台数据获取】的全部内容了,欢迎阅览 ! 文章地址:http://lianchengexpo.xrbh.cn/news/9759.html 
     资讯      企业新闻      行情      企业黄页      同类资讯      首页      网站地图      返回首页 迅博思语资讯移动站 http://lianchengexpo.xrbh.cn/mobile/ , 查看更多   
最新新闻
刘畊宏直播2小时收入120万,打赏的榜一大哥都是什么人?
说起最近这段时间直播界最火的网红明星,非“健身达人”刘畊宏莫属,从今年4月初开始,全国各地都有人因疫情被封控,而刘畊宏的
国家要普涨工资,地方正狂卷就业,让大家挣钱最重要
最近,有一个重要的文件和每个人的“钱袋子”息息相关。那就是《中共中央、国务院关于实施就业优先战略促进高质量充分就业的意见
实探债务危机中的柔宇科技:生产基地半小时只看到3个人,手机业务已停摆
2023年是折叠屏手机爆发年,诸多柔性屏供应商、手机厂商吃到红利。然而面对这样的好光景,柔宇科技却只剩一片残局。曾经凭借柔性
今日头条iphone最新版特色
今日头条ios2021最新版是专为苹果手机用户打造的头条新闻资讯应用,打开今日头条,即可知道今天发生了哪些大事,还有最新的娱乐
一张床垫用N年,弹簧早就疲软了,撑不住儿童发育的脊梁,赶紧换!
你家孩子睡的弹簧床垫陪伴TA多少年了?尤其是弹簧床垫,通常睡上3~5年的儿童床垫,金属弹簧就会呈现不同程度的疲软,这将严重影
增长黑客,创业公司用户增长的秘籍
增长黑客读了范冰的《增长黑客》,启发太多。正如作者在前言中所说,确实是处处均是干货,书里脉络清晰,是本难得的好书。增长黑
实用的高考化学考试答题思路与技巧
高考的化学考试答题要联系所学习的知识,找到知识与问题之间的结合点,确定解题的方案,这才是解题的关键。下面是小编为大家整理
小红书情人节营销指南
│前言│小红书作为女生的口袋百科指南,提供了各种各样的节日攻略内容,同时引导着用户去享受更好的生活,而在即将到来的214情
云南SEO优化如何让描述中出现地址呢?
在搜索引擎优化(SEO)的世界中,整合关键信息,如地址,到网页描述中是提升网站在搜索引擎结果页面上的可见性和点击率的关键策
实用贴!海关统计数据查询攻略
海关统计数据查询攻略为便于社会公众查询和使用海关进出口货物贸易统计数据(以下简称海关统计数据),特编制本查询攻略。一定期
本企业新闻
推荐企业新闻

点击拨打: