Python_養(yǎng)了個(gè)羊_一蓑煙雨任平生

# 養(yǎng)了個(gè)羊

>最近看養(yǎng)了個(gè)羊挺火的,大眾人群安安份份通關(guān),通關(guān)者寥寥無幾,程序員這邊有的用Java刷,有的用C#刷,有的用Php刷,真是八仙過海啊

---

@[TOC](文章目錄)

---

# 前言

隨筆寫寫Python 版本,可以看看學(xué)學(xué),這樣毫無游戲體驗(yàn),沒辦法,玩啥游戲俺都沒體驗(yàn),王者農(nóng)藥寫的auto.js還秒復(fù)活呢,玩了八年毒奶粉(DNF),結(jié)果玩了八年外掛,當(dāng)時(shí)為了毒奶粉還去學(xué)匯編語言,E語言,哎,真是程序毀游戲,游戲毀程序猿,無聊的很

---

# 一、說下思路吧

>思路其實(shí)很簡(jiǎn)單,但是很重要,跟我微信刷步子一個(gè)思路

>獲取數(shù)據(jù)?修改數(shù)據(jù)?上傳服務(wù)器

>第一版:你登陸?zhàn)B了個(gè)羊,會(huì)有一個(gè)token,這是你的唯一標(biāo)識(shí)碼,說簡(jiǎn)單點(diǎn),就是你身份證號(hào),不可能重復(fù),而且可以辨別你是誰,拿到這個(gè)token之后,然后對(duì)第一關(guān)的接口無線調(diào)用,就可以達(dá)到刷關(guān)的目的了。(第一關(guān)通關(guān)接口跟第二關(guān)通關(guān)接口,差別就在于改了一個(gè)數(shù)字,你把第二關(guān)的數(shù)字放在第一關(guān)的接口上就可以無限通關(guān)了)

>第二版:每次都是需要抓到token才可以刷關(guān),一個(gè)初級(jí)程序員或許會(huì)抓包,但是普通人,他不懂抓包啊,所以有沒有一種簡(jiǎn)單的方法來獲取token,你登陸之后個(gè)人信息有個(gè)ID這個(gè)是唯一的跟token差不多,所以用抓包工具可以抓到生成token那個(gè)鏈接,兩者有沒有關(guān)系呢?結(jié)果發(fā)現(xiàn)那個(gè)鏈接里面拼了ID,哇!那就簡(jiǎn)單了,把用戶的ID拼鏈接里面,token不就拿到了,然后有了這篇文章

# 二、老規(guī)矩,廢話不多說,直接上代碼

```python

import easygui

import requests

headers = {

? ? "user-agent": "Mozilla/5.0 (Linux; Android 10; HD1910 Build/QKQ1.190716.003; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/86.0.4240.99 XWEB/4309 MMWEBSDK/20220303 Mobile Safari/537.36 MMWEBID/583 MicroMessenger/8.0.21.2120(0x280015F0) Process/appbrand1 WeChat/arm64 Weixin NetType/4G Language/zh_CN ABI/arm64 MiniProgramEnv/android"

}

# 獲取基本信息

def user_info(uid):

? ? url = "https://cat-match.easygame2021.com/sheep/v1/game/user_info?"

? ? params = {

? ? ? ? "uid": uid,

? ? ? ? "t": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE2OTQ0MDU0MjMsIm5iZiI6MTY2MzMwMzIyMywiaWF0IjoxNjYzMzAxNDIzLCJqdGkiOiJDTTpjYXRfbWF0Y2g6bHQxMjM0NTYiLCJvcGVuX2lkIjoiIiwidWlkIjoxMDg0MzMxMjgsImRlYnVnIjoiIiwibGFuZyI6IiJ9.oT1OY9XokZmHt1Hzifc8ILF1U-xQxY-itXNaeLj02R8"

? ? }

? ? res = requests.get(url, params=params).json()["data"]

? ? return res

# 獲取token

def get_token(uid):

? ? user = user_info(uid)

? ? url = "https://cat-match.easygame2021.com/sheep/v1/user/login_oppo"

? ? data = {

? ? ? ? "uid": user["wx_open_id"],

? ? ? ? "nick_name": user["nick_name"],

? ? ? ? "avatar": user["avatar"],

? ? ? ? "sex": 1

? ? }

? ? res = requests.post(url, data=data, headers=headers).json()['data']['token']

? ? return res

# 每日話題加入羊群

def join_sheep():

? ? url = "https://cat-match.easygame2021.com/sheep/v1/game/topic_game_over?rank_score=1&rank_state=1&rank_time=1&rank_role=1&skin=1"

? ? res = requests.get(url, headers=headers)

? ? print(res.text)

# 刷通關(guān)次數(shù)

def game_over(num):

? ? url = "https://cat-match.easygame2021.com/sheep/v1/game/game_over?rank_score=1&rank_state=1&rank_time=1&rank_role=1&skin=1"

? ? for i in num:

? ? ? ? res = requests.get(url, headers=headers)

if __name__ == '__main__':

? ? t, num = easygui.multenterbox('養(yǎng)了個(gè)羊', '一蓑煙雨任平生',

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? fields=['這里輸入你的個(gè)人信息中的id編號(hào)', '這里輸入你要通關(guān)的次數(shù)'],

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? values=['', ''])

? ? token = get_token(str(t))? # 填寫你自己的uid

? ? headers['t'] = token

? ? join_sheep()

? ? game_over(int(num))

```

>我是普通人,我沒Python環(huán)境,我沒編輯器,運(yùn)行不了這段代碼怎么搞?OK,我給你打成EXE包,你直接用電腦雙擊,這個(gè)會(huì)嗎?(手機(jī)版本的一鍵刷,用小程序應(yīng)該也可以搞,如果這游戲可以撐到下周末的話,搞個(gè)小程序,讓你每天刷,這該死的游戲無聊的很)

---

# 總結(jié)

### 人生苦短 我用Python

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容