不知道大家用過抽獎助手小程式沒?(免費給抽獎助手做個小廣告),我在公眾號多次用它來發過很多獎品,同時,我每天也會去參與一些抽獎,目前的中獎記錄為0(尷尬臉)
很多人學習python,不知道從何學起,
很多人學習python,掌握了基本語法過后,不知道在哪里尋找案例上手,
很多已經做案例的人,卻不知道如何去學習更加高深的知識,
那么針對這三類人,我給大家提供一個好的學習平臺,免費領取視頻教程,電子書籍,以及課程的源代碼!??¤
QQ群:623406465
在助手中參與抽獎你不需要支付一分錢,但是需要花時間,想抽獎就不得不每天打開小程式逐個點擊參與才能參與,每天重復的操作覺得好繁瑣,于是我萌生出一個想法,用程式去自動參與抽獎,
說干就干,熟悉爬蟲基本原理的大概能猜出來怎么做,我們之前寫過基于Python爬微信公眾號爬蟲的系列教程,現在假設你已經會用 Fiddler 去代理 HTTP 請求,怎么安裝 Fiddler 和配置手機端這里不再介紹,自行百度,
配置好 Fiddler 之后,手機打開小程式 “抽獎助手” 之后,有個公共抽獎串列
?
通過 Fiddler 抓包,我們看到抽獎串列的請求地址是:/public_lottery?page=1&size=5, 請求方法是 GET,還有一個 Header 欄位 Authorization,回傳的資料結構可以清晰看到總共回傳了5條資料,代表5個獎品,每個欄位基本能猜出來什么意思,
?
我們再來手動選擇一個活動點擊參與抽獎,看背后它是怎么向服務器發送請求的,弄清楚了原理之后就可以用程式來自動模擬請求,
?
參與抽獎的請求有幾個注意的地方,請求使用的是 POST 方法,URL地址是:/lottery/67c3a5afe794dc7bdbed85a38a18bb44/join ,和抽獎串列一樣,還有一個請求 Header 是 Authorization,它的值就是后面一串很長的 Bearer 開頭的字串… ,
現在我們就可以用 Python 來構建一個自動參與抽獎的腳本,每隔一段時間就去自動刷,發現有新的獎品,就自動參與抽獎,
源代碼
# coding=utf-8
import requests
def main():
url = "https://lucky.nocode.com/public_lottery?page=1&size=5"
# 替換成你自己的Authorization
headers = {
"Authorization": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXV...."}
res = requests.get(url, headers=headers)
lotteries = res.json().get("data")
join_url = "https://lucky.nocode.com/lottery/{id}/join"
for lottery in lotteries:
res = requests.post(join_url.format(id=lottery.get("id")), headers=headers)
data = https://www.cnblogs.com/sn8888/p/res.json()
if res.status_code == 200 and'errors' not in data:
print("成功參與抽獎:《%s》" % lottery.get("prizes").get("data")[0].get("name"))
if __name__ == '__main__':
main()
運行
成功參與抽獎:《阿瑪尼紅管唇釉》 成功參與抽獎:《Havaianas 人字拖》 成功參與抽獎:《《不要成為無聊的大人》》 成功參與抽獎:《Satan 鑰匙扣》 成功參與抽獎:《桌面理線器》
?
現在所有獎品都變成已參與狀態,坐等中獎吧,你還可以對代碼進行改進,
有人可能會問,這算不算作弊呢?我覺得這就是程式員的優勢,我們只是用了不一樣的工具來完成相同的事情,以后編程還真的是每個人都應該掌握的一項基本技能,沒事寫個代碼解決繁瑣的、重復的作業,懶惰是推動社會文明進步的原動力,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/174676.html
標籤:Python
