脱敏说明:目标接口域名已脱敏,仅保留分析方法与流程。
欢迎来到我的博客,第一篇也没啥唠的,简单写一篇文章吧。
哔哩哔哩GitHub
视频原链接
使用的b站图床所以带有水印,懒得去掉了
起因
今天中午下课去找充电桩充电,接连错过三个,小程序的刷新逻辑还有点“感人”,于是打开“黄鸟”开干。
工具
蓝鸟“美化版黄鸟”
python(有手就行)
微信(trustmealready否则抓不到小程序)
主要是记录思路,代码什么的是次要的
开始
抓包过程就不放出来了,很简单,xp模块过检测,抓更新数据接口,放张测试后的截图

可以看到返回的json数据,简单解析一下,看看有没有逻辑
⚠️upload failed, check dev console
(我一开始以为剩余端口是直接返回的数据,仔细一看才发现是做减法)
既然有明文数据就好办了,打开vs开干

可以看到输出正是我想要的,但是这样调用还是不方便,还记得我之前搭的nonebot2机器人,简单修改后效果如下

附上代码,短短几行没啥技术含量,还请大佬勿喷
'''
Descripttion:
version:
Author: sikuai
Date: 2022-09-19 13:22:27
LastEditors: sikuai
LastEditTime: 2022-09-19 13:36:59
'''
import requests
import json
url = 'https://api-target.example.com/api-device/api/v1/Home/AppRecentlyOnlineStation'
headers={
'Header':'application/x-www-form-urlencoded;charset=UTF-8',
'Longitude':'116.80847981770833',
'Latitude':'33.984828287760415',
'deviceTypeParam':'1'
}
res = requests.post(url,headers)
# print(res.text)
data = json.loads(res.text, strict=False)
all_data = data['data']
# print(data)
for i in range(1,10):
TotalWays = all_data[i]['TotalWays']
OccupyWays = all_data[i]['OccupyWays']
Name = all_data[i]['Name']
if TotalWays-OccupyWays > 0:
print(Name+"有"+str(TotalWays-OccupyWays)+"个空")
对接机器人我就放个图,毕竟大家框架都不太一样
![]