python識別驗證碼tesseract介紹與使用


一、什么是tesseract?

  光學字符識別,是指通過掃描字符,然后通過其形狀將其翻譯成電子文本的過程。對於圖形驗證碼來說,它們都是一些不規則的字符,這些字符確實是由字符稍加扭曲變換得到的內容。只能識別一些簡單的驗證碼。

二、安裝與使用

1、安裝(Mac下安裝)

brew install tesseract
//與python對接需要安裝的包
pip3 install Pillow
pip3 install pytesseract

 2、下載語言庫

(1)下載地址:https://github.com/tesseract-ocr/tessdata

根據自己的需求選擇所要的語言庫,在這里我們選擇的是簡體中文所以選擇的庫是:chi_sim.traineddata、eng.traineddata(已有,無需下載) 

 

(2)將文件拷貝到到:/usr/local/Cellar/tesseract/3.04.01_2/share/tessdata目錄下。

(3)終端輸入命令:tesseract --help

3、使用

(1)命令行直接識別

a、在終端打開圖片,運行下圖中命令

 

b、在文件11.txt中查看識別結果

 

 

 

注意:通過測試發現,這種方式一般只能識別純數字或者數字比較多的驗證碼,如果字母多就會無法識別。

(2)在代碼中識別

#!/usr/local/bin/python3.7

from PIL import Image
import pytesseract

# 打開圖片
img = Image.open('Reptile/code.png')
img = img.convert('RGB')
# 識別圖片
result = pytesseract.image_to_string(img)
print('識別結果:',result)

 注意:代碼的識別度也不是很高,可以在代碼中對圖片進行灰度/二值化等處理,提高識別度。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM