最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python實現(xiàn)App自動簽到領(lǐng)取積分功能

 更新時間:2018年09月29日 14:41:49   作者:愛你喲編程  
這篇文章主要介紹了Python實現(xiàn)App自動簽到領(lǐng)取積分功能,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下

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

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

登錄分析

點擊簽到后,會跳轉(zhuǎn)到用戶登錄頁面: https://wechatx.34580.com/mart/#/sign/in,輸入登錄信息后,點擊登錄,同時關(guān)注開發(fā)調(diào)試欄的網(wǎng)絡(luò)交互信息 。


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

{
 "SourceType": "9",
 "Phone": "18800000000",
 "PassWord": "98a53578bd74e150",
 "ZhuGeDeviceMd5": "164edd53b71674-02922cef4808a-47e1039-e1000-164edd53b7222e",
 "DeviceId": ""
}

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

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

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

登錄成功后,請求會響應(yīng)一些 token 數(shù)據(jù):

{
 "Error": 0,
 "Message": "返回正確",
 "Data": {
 "CustomerGuid": "d8cd7c84-xxxx-4369-xxxx-b1e86c027407",
 "Phone": "18800000000",
 "AccessToken": "73c7b5fxxxxxxx"
 }
}

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

簽到分析

登錄成功后,頁面會自動跳轉(zhuǎn)到首頁,我們可以看到簽到圖標(biāo),點擊它,進(jìn)入簽到頁面:


發(fā)現(xiàn)進(jìn)來還是一個簽到按鈕,套娃??!再點它!

終于簽到成功!

發(fā)現(xiàn)簽到的請求: https://wechatx.34580.com/sz/SignUp/CustomerSignUp

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

簽到請求響應(yīng):

{
 "Error": 0,
 "Message": "返回正確",
 "Data": {
 "GetPoints": 5,
 "SumGetPoints": 840
 }
}

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

實現(xiàn)

通過上面的分析,我們的簽到流程也很清晰了,首先就是登陸獲取 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
 }
 # 測試下來發(fā)現(xiàn),連 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 中的傳入數(shù)據(jù)
 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 個積分

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

總結(jié)

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

相關(guān)文章

  • Python對130w+張圖片檢索的實現(xiàn)方法

    Python對130w+張圖片檢索的實現(xiàn)方法

    這篇文章主要給大家介紹了關(guān)于Python對130w+張圖片檢索的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • Python hashlib模塊用法實例分析

    Python hashlib模塊用法實例分析

    這篇文章主要介紹了Python hashlib模塊用法,結(jié)合實例形式分析了Python使用hash模塊進(jìn)行md5、sha1、sha224、sha256、sha512等加密運算相關(guān)操作技巧與注意事項,需要的朋友可以參考下
    2018-06-06
  • 基于Python制作一鍵桌面整理工具

    基于Python制作一鍵桌面整理工具

    相信大家雖然有很多一鍵整理桌面的軟件,但是對于其他路徑下的文件,同樣需要整理,還是很麻煩的。于是本文將利用Python制作一個桌面整理小工具,需要的可以參考一下
    2022-04-04
  • python3生成隨機數(shù)實例

    python3生成隨機數(shù)實例

    這篇文章主要介紹了python3生成隨機數(shù)的用法,實例講述了基于Python的隨機數(shù)的小程序,需要的朋友可以參考下
    2014-10-10
  • Python使用struct庫的用法小結(jié)

    Python使用struct庫的用法小結(jié)

    struct模塊執(zhí)行Python值和以Python?bytes表示的C結(jié)構(gòu)體之間的轉(zhuǎn)換,這可以用于處理存儲在文件中或來自網(wǎng)絡(luò)連接以及其他源的二進(jìn)制數(shù)據(jù),下面介紹下Python使用struct庫的用法,感興趣的朋友一起看看吧
    2022-05-05
  • 解決python web項目意外關(guān)閉,但占用端口的問題

    解決python web項目意外關(guān)閉,但占用端口的問題

    今天小編就為大家分享一篇解決python web項目意外關(guān)閉,但占用端口的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Python字符轉(zhuǎn)換

    Python字符轉(zhuǎn)換

    Python提供了ord和chr兩個內(nèi)置的函數(shù),用于字符與ASCII碼之間的轉(zhuǎn)換。
    2008-09-09
  • Python利用百度地圖獲取兩地距離(附demo)

    Python利用百度地圖獲取兩地距離(附demo)

    本文主要介紹了Python利用百度地圖獲取兩地距離,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-07-07
  • python+tkinter實現(xiàn)學(xué)生管理系統(tǒng)

    python+tkinter實現(xiàn)學(xué)生管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了python+tkinter實現(xiàn)學(xué)生管理系統(tǒng),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • python執(zhí)行shell腳本的四種方法

    python執(zhí)行shell腳本的四種方法

    在Python中提供了很多的方法可以調(diào)用并執(zhí)行shell腳本,本文主要介紹了python執(zhí)行shell腳本的四種方法,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06

最新評論

锦州市| 舟山市| 庐江县| 潼关县| 南投市| 兴隆县| 台北县| 萨嘎县| 双柏县| 富源县| 陆良县| 金寨县| 洛南县| 六安市| 白水县| 图们市| 莱西市| 新巴尔虎右旗| 大渡口区| 乐清市| 香格里拉县| 会泽县| 平度市| 太白县| 苏尼特左旗| 台南市| 大石桥市| 南涧| 七台河市| 靖西县| 洞头县| 阳谷县| 和林格尔县| 靖边县| 襄汾县| 溧阳市| 巴东县| 石嘴山市| 鹿邑县| 北宁市| 七台河市|