日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

用python写一个手机app签到脚本_利用Python实现App自动签到领取积分

發布時間:2024/7/5 python 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用python写一个手机app签到脚本_利用Python实现App自动签到领取积分 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

要自動簽到,最簡單的是打開頁面分析請求,然后我們用腳本實現請求的自動化。但是發現食行沒有頁面,只有 APP,這不是一個好消息,這意味著需要抓包處理了。

有需要Python學習資料的小伙伴嗎?小編整理【一套Python資料、源碼和PDF】,感興趣者可以關注小編后私信學習資料(是關注后私信哦)反正閑著也是閑著呢,不如學點東西啦

不過還好,我們有微信。

在微信里面,我們發現也可以登錄食行,這時選擇在瀏覽器中打開頁面,~哎~ ,柳暗花明了,我們找到了一個可用的網頁地址:wechatx.34580.com

下面的操作就好辦了,在電腦端的瀏覽器打開網址,按下 F12,開始起飛~

登錄分析

點擊簽到后,會跳轉到用戶登錄頁面: https://wechatx.34580.com/mart/#/sign/in,輸入登錄信息后,點擊登錄,同時關注開發調試欄的網絡交互信息 。

可以發現,登錄的請求地址是: https://wechatx.34580.com/sz/Sign/SignInV2,并且會在請求時帶著登錄信息 :

{

"SourceType": "9",

"Phone": "18800000000",

"PassWord": "98a53578bd74e150",

"ZhuGeDeviceMd5": "164edd53b71674-02922cef4808a-47e1039-e1000-164edd53b7222e",

"DeviceId": ""

}

現在,還無法確定哪些字段是必填的,哪些是可以不傳的。

有一個問題是,密碼是經過加密的,我在頁面輸入的 000000 ,這里變成了 98a53578bd74e150。這里我找了半天是如何加密的,也沒有找到,若是有大神有辦法,還請留言告知!

不過還好,加密方式是固定的,也就是 000000 一直對應的是 98a53578bd74e150,我們只要記下這個加密后的密碼,在登錄時,傳入后臺即可。

登錄成功后,請求會響應一些 token 數據:

{

"Error": 0,

"Message": "返回正確",

"Data": {

"CustomerGuid": "d8cd7c84-xxxx-4369-xxxx-b1e86c027407",

"Phone": "18800000000",

"AccessToken": "73c7b5fxxxxxxx"

}

}

只要 Error 字段為 0,就代表登錄成功!

簽到分析

登錄成功后,頁面會自動跳轉到首頁,我們可以看到簽到圖標,點擊它,進入簽到頁面:

發現進來還是一個簽到按鈕,套娃啊!再點它!

終于簽到成功!

發現簽到的請求: https://wechatx.34580.com/sz/SignUp/CustomerSignUp

簽到請求中有兩個重要的參數,accesstoken 和 customerguid,這兩個參數就是登陸后返回的。

簽到請求響應:

{

"Error": 0,

"Message": "返回正確",

"Data": {

"GetPoints": 5,

"SumGetPoints": 840

}

}

返回說這次簽到獲得了 5 個積分,其實連續簽到 4 天后,每天就可以獲得 20 積分了!

實現

通過上面的分析,我們的簽到流程也很清晰了,首先就是登陸獲取 accesstoken 和 customerguid,然后再去簽到就可以了!

import requests, json, sys

def login(Phone, PassWord):

url = "https://wechatx.34580.com/sz/Sign/SignInV2"

payload = {

'SourceType': 9,

'Phone': Phone,

'PassWord': PassWord

}

# 測試下來發現,連 header 都不需要

response = requests.post(url, data=json.dumps(payload))

data = json.loads(response.text)

is_error = data['Error']

# 登錄失敗直接退出

if is_error:

print('登錄失敗:{}'.format(data['Message']))

sys.exit(1)

else:

print('登錄成功!')

return data['Data']['CustomerGuid'], data['Data']['AccessToken']

def signin(customerguid, accesstoken):

url = "https://wechatx.34580.com/sz/SignUp/CustomerSignUp"

querystring = {"accesstoken": accesstoken,

"customerguid": customerguid, "sourcetype": "9"}

# 這次不需要 body 中的傳入數據

response = requests.post(url, params=querystring)

data = json.loads(response.text)

is_error = data['Error']

if is_error:

print(data['Message'])

else:

print("簽到成功,獲取到 {} 個積分".format(data['Data']['GetPoints']))

if __name__ == "__main__":

Phone = input('請輸入賬號:')

PassWord = input('請輸入密碼:')

customerguid, accesstoken = login(Phone.strip(), PassWord.strip())

signin(customerguid, accesstoken)

運行:

$ python shsx.py

請輸入賬號:188xxxxxxxx

請輸入密碼:98a53578bd74e150

登錄成功!

簽到成功,獲取到 20 個積分

最后,怎么自動執行?把登錄信息寫死到代碼里,然后放到 Linux 下的 crontab 里,每天早上執行一次就行啦~

總結

這里還有一個遺留問題,就是登錄密碼的獲取,現在還只能通過 F12 查看請求獲取到,然后記下來。

**有需要Python學習資料的小伙伴嗎?小編整理【一套Python資料、源碼和PDF】,548加上377還有875感興趣者可以進下這個群,反正閑著也是閑著呢,不如學點東西啦**

總結

以上是生活随笔為你收集整理的用python写一个手机app签到脚本_利用Python实现App自动签到领取积分的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。