當前位置:
首頁 > 科技 > 用代碼向 90 後逝去的青春致敬!

用代碼向 90 後逝去的青春致敬!

都說「陪伴是最長情的告白」,那些陪我們走過年少時光的小遊戲,你還記得多少?

可能很多90後都玩過樂斗Ⅱ。但是很遺憾,今天的主角不是它,而是它的兄弟——「Q寵大樂斗」。本文分享如何讓「Q寵大樂斗」自動運行,自動打遊戲。

具體步驟

第一步:分析鏈接。因為直接使用網頁動畫版(也就是上圖)網址的話,會有Flash動畫,還有可能會因為網路問題而導致延遲,從而影響程序的運行。所以本文選擇直接關注其公眾號「Q寵大樂斗」,從開始遊戲的介面進去,這樣就可以進入文字版的遊戲,減少不必要的網速佔用。

第二步:通過審查元素找到相應的元素,使用selenium進行定位控制。

第三步:設置定時任務。讓遊戲腳本每天定時運行、遊戲自動化,實現躺贏的最終理想,哈哈。

注意事項

因為等級原因,有一些功能可能對低等級不開放,所以這個遊戲需要「私人訂製」。

有一些獎勵是需要等到了一定的活躍度才可以領取,所以需要一定的遊戲策略,否則就需要在程序中進行多次判斷。

代碼書寫

因為這個遊戲的任務比較多,所以建議用分模塊來寫比較好。這樣邏輯不會混亂,代碼的可讀性也會更強一點。

登錄模塊

通過上圖可以找出登錄的元素位置,直接使用selenium進行登錄操作。

上面代碼中的第14行是設置等待。直白一點就是:如果WebDriver沒有在 DOM中找到元素,將繼續等待,超出設定時間後則拋出找不到元素的異常。

自動登錄哦 :-)

其他模塊

之前說過,等級不同任務也不同,所以我這裡就放上幾個共同的模塊。具體的任務看下圖:

每日獎勵模塊

樂斗好友模塊

其他的模塊我這裡就不放代碼了,畢竟等級不一樣,代碼可能沒有通用性。而且主要的方法就是定位元素,主要是設置等待時長和注意異常情況的判斷處理就可以了。

計劃任務

具體的計劃任務教程,可以參考《Python與win的完美結合--計劃任務》一文。設置好時間,因為這個遊戲的寵物是靠體力來進行的並且每天只能進行一次任務,所以每天定時打一次就可以了。

最後

本文這個自動打遊戲的demo,只是單純地練習一下selenium操作。順便回憶一下90後的生活,相信有一部分90後小時候還是玩過這個遊戲的。

可能有人就覺得這遊戲有點low(確實有點low),那我只能昧著良心回一句:哥玩的不是遊戲,是情懷,懂不懂?

最後附上本文的源碼鏈接,歡迎自取:

https://github.com/stormdony/python_demo/tree/master/QQ_Pet_Fight

作者:Don Lex。本文經授權轉自Python綠洲,版權歸對方所有。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 CSDN 的精彩文章:

摩拜大範圍癱瘓;安卓或將不再免費;中興又拿大訂單
我為什麼要立刻放棄 React 而使用 Vue?

TAG:CSDN |