04.07 python編程實現《吃雞》文字識別 自動搜索功能

python編程實現《吃雞》文字識別 自動搜索功能

《吃雞》遊戲最近很火。筆者也不息在玩,不外高中的知識都還給教員了。10秒的答題時辰讓人根柢來不及去百度搜索。於是我建造了這個劇本,對問題問題停止文字識別,主動翻開網頁停止搜索。首先來看一下測試成效:

python編程實現《吃雞》文字識別 自動搜索功能

python編程實現《吃雞》文字識別 自動搜索功能

python編程實現《吃雞》文字識別 自動搜索功能

python編程實現《吃雞》文字識別 自動搜索功能

實現事理:

實現事理很是簡單。安卓手機毗連電腦,經由過程adb調試實現敵手機答題頁面的截屏,然後把持百度雲AI停止文字識別,在前往成效中找到問題的文字,經由過程python庫翻開閱讀器停止閱讀。

預備工作:

安卓手機毗連電腦,開啟手機的調試形式。

電腦上必要有adb調試工具和python3安裝

經由過程pip3 install baidu-aip安裝百度的文字識別庫

在百度ai上註冊,並申請一個文字識別的應用,獲得下面第二步必要的三個密碼。

代碼實現:

第一步:引入必要的庫

python編程實現《吃雞》文字識別 自動搜索功能

上面有兩個函數,我們一會再說。

第二步:實現上岸百度aip。這局部按照百度api文檔寫代碼即可。

python編程實現《吃雞》文字識別 自動搜索功能

這局部代碼百度文檔上有,目的是連上百度ai。

第三步:截取屏幕

python編程實現《吃雞》文字識別 自動搜索功能

這局部是adb調試的語法。我們經由過程os.system()挪用

第四步:裁剪圖片併發送圖片到百度ai

python編程實現《吃雞》文字識別 自動搜索功能

這裡用到了上面一起頭的兩個函數。在第三部獲得問題圖片後,我們對圖片停止裁剪,裁剪出只需問題和選項的局部,如答應以大幅進步ai的反響速度。然後經由過程百度給出的函數get_file_content和client.basicGeneral獲得數據。

第五步:獲得問題上網搜索

python編程實現《吃雞》文字識別 自動搜索功能

這裡面我為了應對,“下面的哪些不是。。。”如許的問題,給了兩種搜索編制,一種是隻在百度上搜索問題,另一種是連著謎底一起去百度搜索。

末了經由過程webbrowser翻開閱讀器。

未處理的問題

如今這段代碼在windows上實行是沒有問題的。但在mac上末了一步翻開閱讀器中文會產生亂碼的徵象,我不息沒有方法處理,是編碼的問題呢仍是鉅細端的問題呢,希望讀者能指定一二。

別的,也可以使用一些其他的本地庫來實現文字識別,比如赫赫聞名的tesseract-ocr,但必要停止練習。同時我看到網上有人用beautiful soup停止文字分析,也是很好的標的目的。

別的,這個工具只是一個輔助工具,有些題很靈。但如今有些題很繞,10秒的時辰又看題,又在百度上找謎底,根柢來不及,反而會失經由過程思慮得出精確謎底的時辰。

下面給大家帶點福利分享Python面試題:

1.什麼是Python?使用Python有什麼好處?

Python是一種編程語言,它有對象、模塊、線程、異常處理和自動內存管理。

它簡潔、簡單、方便、容易擴展,有許多自帶的數據結構,而且它開源。

2.什麼是PEP8?

PEP8是一個編程規範,內容是一些關於如何讓你的程序更具可讀性的建議。

3.Python是怎樣管理內存的?

Python的內存管理是由私有heap空間管理的。所有的Python對象和數據結構都在一個私有heap中。程序員沒有訪問該heap的權限,只有解釋器才能對它進行操作。為Python的heap空間分配內存是由Python的內存管理模塊進行的,其核心API會提供一些訪問該模塊的方法供程序員使用。Python有自帶的垃圾回收系統,它回收並釋放沒有被使用的內存,讓它們能夠被其他程序使用。

4.Python是如何被解釋的?

Python是一種解釋性語言,它的源代碼可以直接運行。Python解釋器會將源代碼轉換成中間語言,之後再翻譯成機器碼再執行。

5.有哪些工具可以幫助debug或做靜態分析?

PyChecker是一個靜態分析工具,它不僅能報告源代碼中的錯誤,並且會報告錯誤類型和複雜度。Pylint是檢驗模塊是否達到代碼標準的另一個工具。

python編程實現《吃雞》文字識別 自動搜索功能

6.什麼是Python裝飾器?

Python裝飾器是Python中的特有變動,可以使修改函數變得更容易。

7.字典推導式和列表推導式是什麼?

它們是可以輕鬆創建字典和列表的語法結構。

8.Python都有哪些自帶的數據結構?

Python自帶的數據結構分為可變的和不可變的。可變的有:數組、集合、字典;不可變的有:字符串、元組、數。

好了,今天的知識就分享到這裡,歡迎關注愛編程的南風,私信關鍵詞:學習資料,獲取更多學習資源,如果文章對你有有幫助,請收藏關注,在今後與你分享更多學習python的文章。同時歡迎在下面評論區留言如何學習python。


分享到:


相關文章: