非常簡單的Python識別圖片驗證碼實現過程
很久之前,分享過一次Python代碼實現驗證碼識別的辦法。
當時采用的是pillow+pytesseract,優點是免費,較為易用。但其識別精度一般,若想要更高要求的驗證碼識別,初學者就隻能去選擇使用百度API接口瞭。
但其實百度API接口和pytesseract其實都需要進行前期配置,對於初學者來說就不太友好瞭。
而且百度API必須要聯網,對於某些機器不能聯網的朋友而言,就得pass瞭
最近群裡有位群友分享瞭一個新庫,試用一下發現非常實用,特意今天分享給大傢。
Github地址:https://github.com/sml2h3/ddddocr
該庫名也是非常有趣 —— ddddocr(諧音帶帶弟弟OCR)
環境要求:
python >= 3.8Windows/Linux/Macox..
可以通過以下命令安裝
pip install ddddocr
參數說明:
在網上隨機尋找瞭一個驗證碼圖片,使用這個庫來實戰一下。所以想學的同學,有必要聽一下這位老師的課、領取python福利奧,想學的同學可以到夢雅老師的圍鑫(同音):前排的是:762,中間一排是:459,後排的一組是:510 ,把以上三組字母按照順序組合起來即可,她會安排學習的。
來源:百度搜索
import ddddocr ocr = ddddocr.DdddOcr() with open(‘1.png', ‘rb') as f: img_bytes = f.read() res = ocr.classification(img_bytes) print(res)
成功識別出來瞭驗證碼文字!
而且優點也非常明顯:首先代碼非常精簡,對比前文提到的兩種方法,不需要額外設置環境變量等等,5行代碼即可輕松識別驗證碼圖片。另一方面,我們使用魔法命令%%time也測試出來嗎,這段代碼識別速度非常快。
下面用更多的驗證碼圖片繼續測試:
我又找瞭6個驗證碼圖片來測試,觀察結果,發現這類簡單的驗證碼基本可以進行快速識別。但也有部分結果有問題——字母大小寫沒有進行區分(比如第6張圖片)。
總而言之,如果你需要進行驗證碼識別,且對精度要求不是過高。
那麼,帶帶弟弟OCR(ddddocr)這個庫是一個不錯的選擇~
以上就是非常簡單的Python驗證碼識別實現過程的詳細內容,更多關於Python驗證碼識別的資料請關註WalkonNet其它相關文章!
推薦閱讀:
- Python免費驗證碼識別之ddddocr識別OCR自動庫實現
- 利用Python實現簡單的驗證碼處理
- Python通用驗證碼識別OCR庫ddddocr的安裝使用教程
- python pytesseract庫的實例用法
- 如何利用Python識別圖片中的文字詳解