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

Python 實(shí)現(xiàn)「食行生鮮」簽到領(lǐng)積分功能

 更新時(shí)間:2018年09月26日 09:49:39   作者:hoxis  
今天我們就用 Python 來(lái)實(shí)現(xiàn)自動(dòng)簽到,省得我每天打開(kāi) APP 來(lái)操作了。感興趣的朋友跟隨小編一起看看吧

用過(guò)食行生鮮的同學(xué)應(yīng)該知道,每天可以在食行生鮮簽到,簽到可以領(lǐng)到 20 積分,在購(gòu)物時(shí)可以抵 2 毛錢。錢雖少,但是積少成多,買菜時(shí)可以抵扣一兩塊錢還是不錯(cuò)的。

今天我們就用 Python 來(lái)實(shí)現(xiàn)自動(dòng)簽到,省得我每天打開(kāi) APP 來(lái)操作了。

分析

要自動(dòng)簽到,最簡(jiǎn)單的是打開(kāi)頁(yè)面分析請(qǐng)求,然后我們用腳本實(shí)現(xiàn)請(qǐng)求的自動(dòng)化。但是發(fā)現(xiàn)食行沒(méi)有頁(yè)面,只有 APP,這不是一個(gè)好消息,這意味著需要抓包處理了。

不過(guò)還好,我們有微信。

在微信里面,我們發(fā)現(xiàn)也可以登錄食行,這時(shí)選擇在瀏覽器中打開(kāi)頁(yè)面,~哎~ ,柳暗花明了,我們找到了一個(gè)可用的網(wǎng)頁(yè)地址:wechatx.34580.com


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

登錄分析

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


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

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

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

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

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

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

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

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

簽到分析

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


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

終于簽到成功!

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


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

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

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

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

實(shí)現(xiàn)

通過(guò)上面的分析,我們的簽到流程也很清晰了,首先就是登陸獲取 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
  }
  # 測(cè)試下來(lái)發(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("簽到成功,獲取到 {} 個(gè)積分".format(data['Data']['GetPoints']))
if __name__ == "__main__":
  Phone = input('請(qǐng)輸入賬號(hào):')
  PassWord = input('請(qǐng)輸入密碼:')
  customerguid, accesstoken = login(Phone.strip(), PassWord.strip())
  signin(customerguid, accesstoken)

運(yùn)行:

$ python shsx.py
請(qǐng)輸入賬號(hào):188xxxxxxxx
請(qǐng)輸入密碼:98a53578bd74e150
登錄成功!
簽到成功,獲取到 20 個(gè)積分

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

總結(jié)

這里還有一個(gè)遺留問(wèn)題,就是登錄密碼的獲取,現(xiàn)在還只能通過(guò) F12 查看請(qǐng)求獲取到,然后記下來(lái)。

但是,登錄密碼是怎么加密的,由于本人 js 方面比較薄弱,有能力有興趣的同學(xué)要是能看出來(lái)可以留言分享下啊~

以上所述是小編給大家介紹的Python 實(shí)現(xiàn)「食行生鮮」簽到領(lǐng)積分功能,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • Python WEB應(yīng)用部署的實(shí)現(xiàn)方法

    Python WEB應(yīng)用部署的實(shí)現(xiàn)方法

    這篇文章主要介紹了Python WEB應(yīng)用部署的實(shí)現(xiàn)方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-01-01
  • python用selenium打開(kāi)chrome瀏覽器保持登錄方式

    python用selenium打開(kāi)chrome瀏覽器保持登錄方式

    大家好,本篇文章主要講的是python用selenium打開(kāi)chrome瀏覽器保持登錄方式,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下
    2022-02-02
  • Python實(shí)現(xiàn)Microsoft Office自動(dòng)化的幾種方式及對(duì)比詳解

    Python實(shí)現(xiàn)Microsoft Office自動(dòng)化的幾種方式及對(duì)比詳解

    辦公自動(dòng)化是指利用現(xiàn)代化設(shè)備和技術(shù),代替辦公人員的部分手動(dòng)或重復(fù)性業(yè)務(wù)活動(dòng),優(yōu)質(zhì)而高效地處理辦公事務(wù),實(shí)現(xiàn)對(duì)信息的高效利用,進(jìn)而提高生產(chǎn)率,實(shí)現(xiàn)輔助決策的目的,所以本文給大家介紹了Python實(shí)現(xiàn)Microsoft Office自動(dòng)化的幾種方式,需要的朋友可以參考下
    2025-03-03
  • Python文件去除注釋的方法

    Python文件去除注釋的方法

    這篇文章主要介紹了Python文件去除注釋的方法,涉及Python正則表達(dá)式及文件操作的相關(guān)技巧,需要的朋友可以參考下
    2015-05-05
  • python openCV獲取人臉部分并存儲(chǔ)功能

    python openCV獲取人臉部分并存儲(chǔ)功能

    這篇文章主要為大家詳細(xì)介紹了python openCV獲取人臉部分并存儲(chǔ)功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • 如何利用python生成MD5并去重

    如何利用python生成MD5并去重

    這篇文章主要給大家介紹了關(guān)于如何利用python生成MD5并去重的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • Java多線程編程中ThreadLocal類的用法及深入

    Java多線程編程中ThreadLocal類的用法及深入

    這篇文章主要介紹了Java多線程編程中ThreadLocal類的用法及深入,嘗試了自己實(shí)現(xiàn)一個(gè)ThreadLocal類以及對(duì)相關(guān)的線程安全問(wèn)題進(jìn)行討論,需要的朋友可以參考下
    2016-06-06
  • 手把手帶你用Python實(shí)現(xiàn)一個(gè)計(jì)時(shí)器

    手把手帶你用Python實(shí)現(xiàn)一個(gè)計(jì)時(shí)器

    雖然Python是一種有效的編程語(yǔ)言,但純Python程序比C、Rust和Java等編譯語(yǔ)言中的對(duì)應(yīng)程序運(yùn)行得更慢,為了更好地監(jiān)控和優(yōu)化Python程序,今天將為大家介紹如何使用?Python?計(jì)時(shí)器來(lái)監(jiān)控程序運(yùn)行的速度,以便正對(duì)性改善代碼性能
    2022-06-06
  • python虛擬環(huán)境的安裝配置圖文教程

    python虛擬環(huán)境的安裝配置圖文教程

    下面小編就為大家?guī)?lái)一篇python虛擬環(huán)境的安裝配置圖文教程。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-10-10
  • 使用python實(shí)現(xiàn)遞歸版漢諾塔示例(漢諾塔遞歸算法)

    使用python實(shí)現(xiàn)遞歸版漢諾塔示例(漢諾塔遞歸算法)

    這篇文章主要介紹了使用python實(shí)現(xiàn)遞歸版漢諾塔示例(漢諾塔遞歸算法),需要的朋友可以參考下
    2014-04-04

最新評(píng)論

渭源县| 克拉玛依市| 丹凤县| 东山县| 登封市| 吉安市| 上高县| 汾阳市| 瓮安县| 沁源县| 六盘水市| 齐齐哈尔市| 大邑县| 黄石市| 通城县| 比如县| 米脂县| 馆陶县| 宣恩县| 丰县| 十堰市| 景德镇市| 昌都县| 夏河县| 睢宁县| 微山县| 松滋市| 大同市| 手游| 伊宁市| 宜兰市| 新乡市| 简阳市| 涟源市| 汽车| 龙岩市| 手游| 大名县| 康马县| 中超| 同心县|