教你用python擼走《百萬英雄》《沖頂大會》獎金
百萬英雄類答題遊戲的程序員打開方式
最近這類答題app比較火,我的同事wangtonghe為開源社區貢獻了他的python代碼。以下文章為他的思路,分享給大家。
-初步思路
思路很明確,把答案截圖pull過來,通過PYTHON OCR 庫進行識別成文字後再放到百度搜索。匹配出現率最頻繁的詞語,記過幾番嘗試後,一些容易搜索的問題還是是可以搜索大部分答案的。
嘗試
目前它是手動的,也就是說每次答案出現,手動執行腳本返回答案。同樣由於個別題目原因(如某個詞有多少筆畫)雖然不是百分之百的成功率,但是一般都能進入決賽+一張復活卡基本妥妥『吃雞』,下面是吃雞截圖:
技術棧
實現語言python,用到的類庫如下:
PIL
pytesseract(圖片識別庫)
BeautifulSoup(頁面解析)
文字識別引擎需單獨安裝,參見Python人工智慧之圖片識別,Python3一行代碼實現圖片文字識別以及mac上文字識別 Tesseract-OCR for mac
主體代碼如下:
文字識別需經訓練,訓練越多結果越准。
結語
要想實現更智能化,有個思路是不停的截圖(1秒一次),一旦截到答題頁(可以用答題頁的色差來做),做文字識別後百度,將百度後的結果與選項做比較,哪個出現次數最多哪個就是最佳答案,這裡可以加個判斷,如果特別確定直接模擬點擊事件選答案,不確定就手工。
有同學提到分析請求,也是個思路,後續可以研究。
歡迎探討其他更好的實現方式。
作者:Vendar_GM
源自:https://juejin.im/post/5a579d63f265da3e4d72a028
聲明:文章著作權歸作者所有,如有侵權,請聯繫小編刪除
※Python人工智慧之圖片識別,Python3一行代碼實現圖片文字識別
TAG:python |