#01
截圖文字識別工具
有時候在海報上面,圖片上面,或者PDF文檔中,經常出現一些唯美的文字。這個時候想要複製下來才發現不能複製。因為有的是圖片,有的是PDF。
可以使用Python製作一個小工具,來識別圖片上的文字。但是保存圖片等又太麻煩,如果能截圖一鍵識別就好了。我們用Python來實現。
#02
實現截圖
第一步,先要實現能截圖,並將圖片保存起來以供識別。截圖我們就使用常見的截圖工具就好(如果另外安裝截圖軟體或者指定特殊截圖軟體也是不方便的)。
常見的截圖工具是微信截圖(Alt+A截圖)QQ截圖(Alt+Ctrl+A截圖),我使用Snipaste截圖工具(F1截圖)。
有了截圖工具,就需要按鍵盤的按鍵進行截圖,所以使用Python模塊來監控鍵盤事件就好了,這樣就知道了什麼時候進行截圖,什麼時候截圖結束。新建py文件名為screenShot,代碼及注釋如下:
keyboard.wait` 知道按壓f1才會執行下一行
im = ImageGrab.grabclipboard()` 讀取剪切板中的圖片
使用keyboard.wait監控鍵盤事件,當點擊某個指定的按鍵以後才會執行下一行。我的截圖工具採用ctrl+c結束,這也是結束的標誌。
其他截圖工具也可以使用這種方式,比如QQ截圖是Alt+Ctrl+A開始截圖,enter鍵結束截圖,並將截圖的數據保存在了剪切板了。只需從剪切板讀取數據,保存在本地等待識別即可。
注意:程序中有一行sleep(0.01)也就是程序會在此等待一下,目的是為了防止圖片還沒有保存在剪切板程序就從剪切板讀取圖片。
#03
圖片識別
上一步將圖片保存在了本地等待識別,這一步採用百度雲提供的接口來識別圖片。具體的識別方式可以查看百度雲官網的文字識別模塊。新建py文件名為baidu,代碼內容如下:
程序的核心功能是使用百度雲提供的`basicGeneral`方法來識別圖片。在識別圖片之前,要進行工單的配置。工單的配置需要登錄百度雲帳號,並且建立一個可用的工單。官網有提供具體方法。
#04
工單配置
在xxx處填寫你的信息
#05
各文件調用
使用screenShot文件調用baidu文件:
直接運行該文件即可