聲明:本文只做學習研究,禁止用於非法用途,不然後果自負,若有侵權,請告知刪除,謝謝!python
某某健康APP逆向
項目場景:
接上一篇https://blog.csdn.net/qq_26079939/article/details/109285783json
1.上一篇講到了模擬登入,這一篇要實現的是上傳本身設定的步數到WX和ZFB。
2.準備階段
- 登入帳號
- 點擊個人
- 點擊數據共享
- 而後第三方同步到WX和ZFB
解決方案:
1.而後咱們開始抓同步部署數據的包,因爲如今博主用的是模擬器,沒法增長步數,因此抓不到上傳步數的包,你們能夠在手機端抓到。
2.這是我以前用手機抓到的上傳數據的請求。
url = 'https://sports.lifesense.com/sport_service/sport/sport/uploadMobileStepV2?systemType=2&version=4.6.7' data = { 'list': [ { 'DataSource': 2, 'active': 1, 'calories': int(step / 4), 'dataSource': 2, 'deviceId': 'M_NULL', 'distance': int(step / 3), 'exerciseTime': 0, 'isUpload': 0, 'measurementTime': time.strftime('%Y-%m-%d %H:%M:%S'), 'priority': 0, 'step': step, 'type': 2, 'updated': int(round(time.time() * 1000)), 'userId': login_result[0] } ] }
3.接下來咱們實現修改步數的代碼。
# 修改步數 def change_step(): # 登陸結果 login_result = login() if login_result == '登陸失敗': return '登陸失敗' else: url = 'https://sports.lifesense.com/sport_service/sport/sport/uploadMobileStepV2?systemType=2&version=4.6.7' data = { 'list': [ { 'DataSource': 2, 'active': 1, 'calories': int(step / 4), 'dataSource': 2, 'deviceId': 'M_NULL', 'distance': int(step / 3), 'exerciseTime': 0, 'isUpload': 0, 'measurementTime': time.strftime('%Y-%m-%d %H:%M:%S'), 'priority': 0, 'step': step, 'type': 2, 'updated': int(round(time.time() * 1000)), 'userId': login_result[0] } ] } headers = { 'Content-Type': 'application/json; charset=utf-8', 'Cookie': 'accessToken=%s' % login_result[1] } response_result = requests.post(url, data=json.dumps(data), headers=headers,verify=False) status_code = response_result.status_code print('修改步數返回的數據:',response_result.text) if status_code == 200: print('修改步數爲【%s】成功' % step) else: print('修改步數失敗')
4.而後咱們執行一下,再去看看微信運動裏的數據,哈哈哈,修改爲功了66666,立刻登頂封面了!