亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python利用Tesseract識別驗證碼的方法示例

發布時間:2020-08-19 14:32:34 來源:腳本之家 閱讀:145 作者:老_大叔o 欄目:開發技術

無論是是自動化登錄還是爬蟲,總繞不開驗證碼,這次就來談談python中光學識別驗證碼模塊tesserocrpytesseracttesserocrpytesseract是Python的一個OCR識別庫,但其實是對tesseract做的一層Python API封裝,pytesseract是Google的Tesseract-OCR引擎包裝器;所以它們的核心是tesseract,因此在安裝tesserocr之前,我們需要先安裝tesseract

下載安裝

下載地址:https://digi.bib.uni-mannheim.de/tesseract/tesseract-ocr-w64-setup-v4.0.0.20181030.exe

下載完成后,雙擊安裝,可以勾選Additional language data(download)選項來安裝OCR識別支持的語言包,但下載語言包實在是慢,我們可以直接從https://github.com/tesseract-ocr/tessdata/下載zip的語言包壓縮文件,解壓后將tessdata-master中的文件復制到Tesseract的安裝目錄C:\Program Files (x86)\Tesseract-OCR\tessdata目錄下,最后我們配置下環境變量,我們將C:\Program Files (x86)\Tesseract-OCR添加到環境變量中。進入命令提示符,輸入tesseract,顯示下圖結果,說明配置完成

python利用Tesseract識別驗證碼的方法示例

查看安裝了的語言包:tesseract --list-langs

python利用Tesseract識別驗證碼的方法示例

顯示我一共安裝了167種語言包,里邊包含英文或者其他字符。

測試

實驗用的二維碼

python利用Tesseract識別驗證碼的方法示例

基本使用語法
tesseract image.png result (tesseract 圖片名稱 生成文件名稱)

結果

python利用Tesseract識別驗證碼的方法示例

由結果來看,識別出來了P、2和X,但是把C識別成了G,識別度還是比較高,接下來看在python中的使用

python引入tesseract

在python下使用pip命令即可完成下載安裝 pip install pytesseract

識別驗證碼腳本

import pytesseract
from PIL import Image
im=Image.open('pin.png')
print(pytesseract.image_to_string(im))

結果

python利用Tesseract識別驗證碼的方法示例

這樣識別的結果同樣跟上文一樣,個別字符識別的不是很準確

圖像處理

現在網站上的二維碼設計的通常很難復雜,如果直接識別的話很難識別出來,下面這段代碼是進行灰度處理和二值化

import pytesseract
from PIL import Image
im=Image.open('5.jpg')
#進行置灰處理
im=im.convert('L')
#這個是二值化閾值
threshold=150
table=[]
for i in range(256):
 if i<threshold:
  table.append(0)
 else:
  table.append(1)
#通過表格轉換成二進制圖片,1的作用是白色,0就是黑色
im=im.point(table,"1")
im.show()
print(pytesseract.image_to_string(im))

原圖

python利用Tesseract識別驗證碼的方法示例

置灰和二值化后

python利用Tesseract識別驗證碼的方法示例

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

洞口县| 德安县| 泾源县| 天等县| 沾化县| 安阳县| 建德市| 洪雅县| 富裕县| 邻水| 东乌珠穆沁旗| 金沙县| 玛曲县| 海伦市| 河南省| 宁陕县| 博湖县| 保德县| 静乐县| 涿鹿县| 威宁| 大名县| 南雄市| 东兴市| 年辖:市辖区| 绥宁县| 扎赉特旗| 永和县| 会泽县| 昌都县| 宜春市| 东港市| 沙坪坝区| 望城县| 南皮县| 都江堰市| 铜鼓县| 岳池县| 清河县| 鲁山县| 迁安市|