Python网络爬虫(中国空气质量在线监测平台爬取(JS加密与混淆处理))Wollf

该网站所有的空气质量数据都是基于图表进行显示的,并且都是出发鼠标滑动或者点动后才会显示某点的数据,所以如果基于selenium进行数据爬取也是挺吃力的,因此我们采用requests模块进行数据爬取。

基于抓包工具展开分析:

然后点击捕获到的数据包后,发现当前ajax请求为post类型的请求,携带一个请求参数d,且该请求参数为加密之后的数据,并且响应中的响应数据也是经过加密后的密文数据。

加密的请求参数:

加密的响应数据:

问题:那么如果我们想要将空气质量数据进行爬取,则需要对上述捕获到的ajax数据包中的post请求对应的url携带请求参数进行请求发送,然后获取对应的响应数据。但是请求参数是加密后的密文,响应数据也是加密后的密文。并且post请求参数对应的密文每次请求都是动态变化的,我们如何设置?就算能够破解动态且加密的请求参数,那么我们请求到的密文形式的响应数据我们也无法使用啊,我们只能使用可视化的明文数据,也就是解密后的数据。所以,我们换个思路,撸起袖子,把数据加密给干了!

解决:

-进入到点击事件对应的页面源码中,发现果真是对搜索按钮添加了一个点击事件。

-接下来,我们需要分析getData函数的内部实现,在当前源文件中,搜索该方法进行定位,定位到了之后,通过简短的分析,发现其内部是调用下图选中的两个方法进行数据的请求。

-接着分析这两个方法内部的实现,该两个方法就在getData实现的下方。再进一步分析发现这两个方法都调用了getServerData()这个方法,并传递了method、param等参数,然后还有一个回调函数很明显是对返回数据进行处理的,这说明Ajax请求就是由这个getServerData()方法发起

-JavaScript混淆:我们会惊讶的发现getServerData后面跟的是什么鬼啊?不符合js函数定义的写法呀!!!其实这里是经过JavaScript混淆加密了,混淆加密之后,代码将变为不可读的形式,但是功能是完全一致的,这是一种常见的JavaScript加密手段。我们想要查看到该方法的原始实现则必须对其进行反混淆。

-分析:在反混淆后,我们很清晰的看到了ajax请求发送的实现。然后还看到了ajax对应post请求的动态加密请求参数的加密方法getParam(),并且将method和object作为了函数的参数。method和object是从getServerData函数的参数中获取的,那么getServerData函数中的method和object表示的是什么呢?我们需要回过头去查看getServerData函数的调用:

至此getParam()函数中的两个参数的表示含义我们已经清楚了。getParam函数的返回值就是ajax对应post请求的动态加密请求参数了,我们需要定位到其函数内部的实现,看看是如何对请求参数进行加密的。在getServerData中我们发现了ajax请求对应的操作代码,其中还有一个非常重要的一步,就是ajax请求成功后的回调函数实现内部,接受到了响应数据data,data我们知道是一组密文数据,然后调用了decodeData对data进行了解密操作:

在反混淆网站的代码中我们可以搜索到getPrame和decodeData这两个函数的实现:

发现getParam函数中使用了Base64和AES对param进行加密。加密之后的字符串便作为ajax对应post的请求参数传送给服务器了。

服务器相应回来的密文数据是被decodeData进行解密的。观察解密函数发现是通过base64+AES+DES进行的解密!

-总结:点击查询按钮后,最终是触发了getServerData函数发起了ajax请求,请求参数是通过getParam进行的加密,响应回来的密文数据是通过decodeData函数进行解密处理的。

接下来,我们需要借助于PyExecJS库来实现模拟JavaScript代码执行获取动态加密的请求参数,然后再将加密的响应数据带入decodeData进行解密即可!

-PyExecJS介绍:PyExecJS是一个可以使用Python来模拟运行JavaScript的库。我们需要pipinstallPyExecJS对其进行环境安装。

注意:PyExecJS的调用eval方法需要基于nodejs服务器语言环境,需要安装nodejs环境,否则执行会报错

-开始执行js:

-1.创建一个jsCode.js文件,将反混淆网站中的代码粘贴到jsCode.js文件中

-2.在该js文件中添加一个自定义函数getPostParamCode,该函数是为了获取且返回post请求的动态加密参数:

//返回加密后的参数结果functiongetPostParamCode(method,city,type,startTime,endTime){varparam={};param.city=city;param.type=type;param.startTime=startTime;param.endTime=endTime;returngetParam(method,param);}-3.在py源文件中可以基于PyExecJS模拟执行步骤2中定义好的自定义函数,获取动态加密参数:

importexecjs#导入执行js代码的模块node=execjs.get()#Paramsmethod='GETCITYWEATHER'city='北京'type='HOUR'start_time='2018-01-2500:00:00'end_time='2018-01-2523:00:00'#Compilejavascriptfile='jsCode.js'ctx=node.compile(open(file,encoding="utf-8").read())#Getparamsjs='getPostParamCode("{0}","{1}","{2}","{3}","{4}")'.format(method,city,type,start_time,end_time)params=ctx.eval(js)print(params)

THE END
1.渗透测试(1)CDN到底是什么?浅析一下CDN内容分发网络:https://blog.csdn.net/m0_55724788/article/details/123898848 超级ping ( 多个地点ping 检测,查看ip地址是否相同,来判断是否使用了 cdn ) 在线工具 whois 信息:http://whois.chinaz.com Web 指纹、系统、DNS:http://www.yunsee.cn/ https://blog.csdn.net/freeking101/article/details/125576085
2.如何测评宽带网速?使用在线速度测试工具,如 speedtest.net,可以快速测量宽带网速。 在当今数字化时代,宽带互联网已成为家庭和企业不可或缺的一部分,无论是工作、学习还是娱乐,快速稳定的网络连接都是至关重要的,许多用户常常面临网速不达标或不稳定的问题,这不仅影响了日常使用体验,还可能导致工作效率降低,如何准确测评宽带网速成为了一https://huochengrm.cn/zz/169258.html
3.身份证查询身份证号码查询身份证号大全和真实姓名首页>身份证号码查询验证 国内身份证号码查询归属地验证(免费查询)https://qq.ip138.com/idsearch/
4.全网查重免费查询工具一键检测文章原创性在当今信息爆炸的时代,如何确保文章的原创性成为了学术界和写作领域的重要议题。全网查重免费查询工具应运而生,通过一键检测,帮助用户快速了解文章的原创性,提高学术水平和写作http://cnki.cnkipaper.com/fanwen/68813.html
5.联想官网联想服务联想电脑在线检测工具电脑优化配置检查电脑优化配置检查贴心网络服务向导 什么是联想在线检测工具 联想在线检测工具可以快速准确的为您的电脑进行全面体检,机器配置、生产日期、系统健康度及硬件资源使用情况让您一目了然。您不仅可以通过下载联想服务工具来优化您的电脑,还可通过联想远程服务解决更多电脑使用中的问题。 https://support.lenovo.com.cn/lenovo/wsi/plugins/clientcenter.aspx
6.网速测试测试网速8.石家庄新世网网络技术9.汇通货运信息网10.南磷集团 >>更多 网络测试工具列表 ·网页内容分析工具·带中文路由位置信息的在线·Visualroute网络路径结点..·IP或域名所在地双向查询·域名注册查询·网站反应速度测试·服务器历史状况检测工具·NETMECHANIC.COM测试网页特性·网络速度测试 >>更多http://www.linkwan.com/gb/broadmeter/SpeedAuto/
7.网络测速在线ping检测网站测速工具域名污染域名被墙vsping.com免费提供ping,网站测速,网络测速在线,ping检测,网络速度检测,域名污染检测,域名被墙查询,多地区在线dns查询,路由跟踪查询,ipv6网站测试等功能;网络检测节点覆盖全国各省电信,联通,移动,教育网等。https://mobile.vsping.com/
8.网络速度检测多地区在线ping检测dns查询Boce-免费提供网站速度测试、网络速度检测、多地区在线ping检测、dns查询、路由跟踪查询、ipv6网站测试服务;网络检测节点覆盖全国各省电信、联通、移动、教育网等。 Boce网站速度测试是一个热门的速度/压力测试网站&程序、归属于无峰导航中的站长利器导航。目前已经有(8.1K)人浏览过Boce网站速度测试,广受网友们的一致好https://www.8kmm.com/sites/2732.html
9.ping检测多个地点Ping服务器,网站测速实时监测:全球速测持续监测网络状况,确保测速结果的实时性和有效性。 相关功能 域名类 WHOIS查询DNS查询过期域名查询NsLookup查询域名删除时间友链查询SEO综合查询 IP类 IP 查询IP 批量IP反查域名IP WHOIS查询百度真假蜘蛛IP所在地批量友链同IP检测端口扫描 https://ping.chinaz.com/
10.排水管网及海绵城市在线监测网络建设与运维典型技术要求2.2在线监测仪表参数要求 按照监测方案及需求,在线监测仪表主要包括:在线液位计、在线超声波流量计、在线水质检测仪、在线雨量计等,仪表信号通过无线网络进入计算机系统。 (1)总则 A.测量仪表的防护等级要求;水下或有可能在水下的部分的防护等级为IP68,水上部分的防护等级为IP65。 http://www.thuenv.com/h-nd-22.html
11.公安部互联网交通安全综合服务管理平台平台是由公安部统一研发、各地公安机关交通管理部门部署运营,为交通参与者提供公安交管业务办理、预约、宣传,信息告知、查询等服务的“互联网+”便民利民服务平台 (详细服务内容)。交通参与者可以通过以下方式获取服务:1、访问平台网站。网站域名为“地方字母码.122.gov.cn”(点击下方网站导航链接);2、下载安装“交管12https://gab.122.gov.cn/
12.句易网标签:创意文案广告违禁词广告违禁词查询文案违禁词查询文案违禁词检测新广告法违禁词查询工具违禁词查询违禁词查询工具违禁词查询检测工具违禁词检测违禁词检测工具 官网入口一键免费AI抠图 句易网简介: 句易网为您提供最新广告法淘宝抖音违禁词在线过滤工具,欢迎使用,工具适用于各类行业自媒体短视频文案新闻稿检查,词库包含各https://pidoutv.com/sites/225.html
13.mail.ahgaoxin.com的综合查询阿里邮箱敏感词违禁词在线检测工具SEO综合查询 阿里邮箱 历史数据 TDK更新 : 2024-12-23 SEO信息 百度来路:- IP 移动来路:- IP 出站链接:- 首页内链:- 百度权重: 移动权重: 360权重: 神马: 搜狗: 谷歌PR: ALEXA排名 世界排名:- 国内排名:- 预估日均IP≈- 预估日均PV≈- 备案信息 备案号:- 性质:- 名https://www.aizhan.com/cha/mail.ahgaoxin.com/
14.姓名测试打分免费测名字打分宝宝起名打分每日一占 生男生女测试 专题推荐 八字知识 八字五行 周公解梦 风水知识 生肖运势 本命年 犯太岁 生肖年龄 星座运程 在线起名 八字排盘 农历阳历查询 星座查询 生日运程书 生肖星座 属鼠 属牛 属虎 属兔 属龙 属蛇 属马 属羊 属猴 属鸡 属狗 属猪https://xmcs.buyiju.com/
15.网络测试在线探索一个强大的运维工具网站,拥有超过1000个全球网络拨测节点,模拟用户访问域名或IP,是运维人员的得力助手。 无论您需要测试网络速度还是评估网站性能,这个工具都能提供详尽的报告。从中国地区到海外,覆盖103个检测点,持续监测网络状况。 测试结果包括:最快节点、最慢节点、线路/运营商、平均响应时间等信息https://mbd.baidu.com/newspage/data/dtlandingsuper?nid=dt_3084863057138606803
16.服务店特别提醒: ①针对打印机业务,本店仅提供检测、软件问题处理服务,暂不提供硬件维修服务;给您带来不便,敬请谅解。 华为官网想要获取您的地理位置,您是否同意?详情可以查询《华为隐私政策》 是 否 热门服务活动 华为服务 回馈礼遇 备件8.8折、换电池立减50元、维修免人工费、免费贴膜 屏幕外层玻璃维修 169元起,享https://consumer.huawei.com/cn/support/service-center/index.htm
17.CNKI客户服务中心PRE-SALES售 前 (订购咨询) 个人咨询机构咨询 POST-SALE售 后 (帮助支持) 个人服务机构服务 TRAINING培 训 个人学习机构预约http://service.cnki.net/
18.IPv6测试检测是否在IPv6网络环境IPv6 Test,在线检测当前网络是否为IPv6网络,并可查询客户端IPv6地址和归属地区。https://www.ip5.me/ipv6/
19.淘宝违禁词禁用词敏感词极限词免费在线查询系统词查查违禁词查询网(词查查),提供2021年禁用词汇、违禁词、极限词、敏感词、限制词等网络文明用语在线检测,为淘宝京东美工、抖音用户、个人站长等提供帮助的平台。 官网 报告失效 标签:电子商务(111)互联网电商(58)敏感词(9)禁用词(3)极限词(3)淘宝违禁词(2) https://123.meibp.com/9199.html
20.网站安全在线检测网站安全扫描工具网站漏洞检测通过漏洞扫描和持续监控来发现网站的安全隐患。支持系统漏洞扫描和web漏洞扫描。涵括CVE、OWASP各种漏洞类型,上千种检测策略。支持多种网站服务器架构的安全检测,深入多种网站架设平台及多种网站开发种类。 资产探测 Scanv具备自动探测发现无主资产、僵尸资产的功能,并对资产进行全生命周期的管理。主动进行网络主机探测、https://www.zw.cn/Security/scanning.html
21.微步在线微步在线,网络威胁发现和响应专家,开创并引领中国威胁情报行业的发展,提供流量检测、终端安全、云上安全、安全DNS、网关、蜜罐、沙箱、威胁分析和情报共享、安全服务等全方位威胁检测产品及服务。https://threatbook.com/
22.我爱测IP测速在线ping在线tcping网站测速HTTP测速免费提供网站速度测试、网络速度检测、域名污染检测、域名被墙查询、多地区在线ping测试、dns查询、路由跟踪查询、ipv6网站测试等站长工具;网络检测节点覆盖全国各省电信、联通、移动、教育网等https://www.52ce.com/
23.ipv6检测本站能测试你的浏览器和网络是否支持 IPv6,并显示你当前的 IPv4 和 IPv6 地址。http://www.test-ipv6.com/
24.西安交通大学第二附属医院预约诊疗及线上诊疗服务指南西安交大二附院互联网医院服务平台(以下简称“西北健康”)开通了网络复诊、在线咨询、院内核酸检测统计、健康宣教等服务,为市民提供互联网线上诊疗服务。 “西北健康”小程序访问入口 互联网服务目录索引 一、 线上复诊 二、在线咨询 三、核酸检测统计 四、健康宣教 https://www.ishaanxi.com/c/2022/1220/2681737.shtml
25.域名拦截dns查询IPv6网站测试路由跟踪查询劫持检测拨测(boce.com)免费提供网站速度测试、网络速度检测、域名污染检测、域名拦截查询、多地区在线ping测试、dns查询、路由跟踪查询、ipv6网站测试等站长工具;网络检测节点覆盖全国各省电信、联通、移动、教育网等。https://www.boce.com/
26.网站测速Ping检测Trace查询Dig查询路由跟踪查询tools.ipip.net-免费提供网站速度测试、网络速度检测、多地区在线ping检测、dns查询、路由跟踪查询、ipv6网站测试服务;网络检测节点覆盖全国各省电信、联通、移动、教育网等。https://tools.ipip.net/
27.中国质量网特种设备检验检测人员考核 国家计量基准的审批 计量标准器具核准 中国质量检验协会 防伪溯源物流管理服务系统 http://www.12365114.cn 中国质量检验协会 电话电码防伪防窜货查询系统 http://www.c315.cn 中国质量检验协会 防伪溯源?质量诚信验证服务系统 http://www.chinatt315.org.cn/
28.在线ping多地ping多线路ping持续ping网络延迟测试检测点响应IPIP地理位置丢包发包最新(ms)最快(ms)最慢(ms)平均(ms)网络质量 电信辽宁大连47.75.18.65中国/香港/阿里云0%100634712562 电信浙江丽水47.75.18.65中国/香港/阿里云0%10047317852 电信江苏镇江47.75.18.65中国/香港/阿里云0%10031316340 电信湖南长沙47.75.18.65中国/香港/阿里云0%10031154735 https://www.itdog.cn/ping/
29.网络中心“管理服务”两章,加强了职业教育教学中信息化对产教融合办学、校企合作人才培养、实验实训与顶岗实习、职业培训等的支撑要求;将原“基础设施”改为“支撑条件”,并将其中的一节扩展为新的一章“网络安全”,以适应当前网络风险管控的需要;将信息化组织管理保障的相关内容从原“总体要求”中抽取出来,新设立一章“http://www.xtzy.com/wlzx/detail.jsp?public_id=153330
30.广西联通(云WiFi平台)图4.3.1 网络总体结构图 (1)在联通数据中心机房建设云Wi-Fi虚拟化平台。 (2)云Wi-Fi平台包括基础云平台、Portal集群、Radius集群、运营管控系统、智能营销系统、上网行为管控系统、网管监控系统。 (3)目标客户包括商场、企业、营业厅场所等,均通过云Wi-Fi网关统一接入到云Wi-Fi系统,实现统一认证管控。 http://www.shixunet.com/cgal89.html
31.鄂尔多斯教育在线微信公众号 123456 鄂尔多斯市直机关第十七届职工运动会在市体育事业发展中心开幕 教育动态 教育信息化 [市局动态]“创新协同育才新机制 共绘校地合作新篇章”高校校长圆桌会召开 李理09-25 [市局动态]鄂尔多斯市直机关第十七届职工运动会在市体育事业发展中心开幕09-24 https://www.erdosedu.com/
32.潜在周报:第40周收录125起投融事件,直播未平单车又起同时还可以直接通过将智能软件代理嵌入到应用程序的代码里,通过分布众多的智能传感器来检测、更正以及不需要停止开发或者运营就能保护应用程序免遭黑客袭击。 无人车安全公司Karamba获250万美元A轮融资 Fontinalis Partners领投,YL Ventures和GlenRock跟投。Karamba是一个无人车安全公司,专注于车联网和无人车的网络安全防护https://www.163.com/dy/article/C2D0R1CP05118O92.html
33.互PING拓扑绘图与报警全国PING延迟地图与在线检测工具等功能检测工具,支持使用SmartPing各节点进行网络相关检测 设计思路 本系统的定位为轻量级工具,即使组多点成互Ping网络可以遵守无中心化原则,所有的数据均存储自身节点中,每个节点提供出方向的数据,从任意节点查询数据均会通过Ajax请求关联节点的API接口获取并组装全部数据。 项目截图 技术交流 项目贡献 欢迎参与项目贡献!比如提交https://github.com/haigirl/smartping