中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

詳解Python安裝tesserocr遇到的各種問題及解決辦法

發布時間:2020-09-06 10:16:15 來源:腳本之家 閱讀:185 作者:雨軒戀i 欄目:開發技術

Tesseract的安裝及配置

在Python爬蟲過程中,難免遇到各種各樣的驗證碼問題,最簡單的就是詳解Python安裝tesserocr遇到的各種問題及解決辦法​這種驗證碼了,那么在遇到驗證碼的時候該怎么辦呢?我們就需要OCR技術了,OCR-即Optical Character Recognition光學字符識別,是指通過掃描字符,然后將其形狀翻譯成電子文本的過程。而tesserocr是Python的一個OCR識別庫,所以在安裝tesserocr之前,我們需要安裝tesseract這個東西

下載地址:https://digi.bib.uni-mannheim.de/tesseract/可以選擇下載不帶dev的穩定版本,我下載的是3.05.01版本的,不過這個版本的可能比較早了,識別能力不是很厲害,讀者可以選擇下載最新版本的3.05.02,識別能力應該會好很多。

下載完就是一路雙擊,在最后的Additional Language data(download)選上這個選項,是OCR支持各種語言的包,然后繼續安裝,直到安裝成功。

我的安裝路徑為:G:\Program Files (x86)\Tesseract-OCR

詳解Python安裝tesserocr遇到的各種問題及解決辦法

安裝完成后就得需要配置環境變量,打開環境變量設置,在path中加入如下

詳解Python安裝tesserocr遇到的各種問題及解決辦法​的設置,這樣tesseract就安裝成功并配置完成了、

tesserocr庫的安裝

剛開始我直接在cmd下輸入 pip install tesserocr 很不幸報錯了,報錯類似于如下。。。因為之前我的報錯,沒有截圖。所以。。

詳解Python安裝tesserocr遇到的各種問題及解決辦法

就是類似于這種的截圖,這該怎么辦,難道要去下載visual C++嗎?我們有更好的解決方法,下載對應的.whl文件

下載地址:https://github.com/simonflueckiger/tesserocr-windows_build/releases一定要下載對應版本的

詳解Python安裝tesserocr遇到的各種問題及解決辦法

我的是3.5.1,所以我下載的是這個版本的。讀者可以自行選擇。

我的tesserocr-2.2.2-cp36-cp36m-win_amd64.whl文件下載在G盤根目錄下,然后在cmd里輸入 pip install G:\tesserocr-2.2.2-cp36-cp36m-win_amd64.whl 開始安裝whl文件,發現報錯了。提示不能安裝whl文件。。原來是沒有安裝wheel。

然后我就去安裝了wheel 直接 pip install wheel即可。

安裝成功 在輸入pip install G:\tesserocr-2.2.2-cp36-cp36m-win_amd64.whl 發現開始安裝了。

哎心累啊,總算弄好了。但是,我在pycharm中調用tesserocr 這個庫,他又提示報錯了,這是為什么呢?百度了一下最終解決。

原來需要在pycharm下的terrminal下輸入如下圖:

詳解Python安裝tesserocr遇到的各種問題及解決辦法

如果報錯了還得有一步操作。

將Tesseract-OCR下的tessdata文件復制到你的Python安裝路徑的scripts下:

詳解Python安裝tesserocr遇到的各種問題及解決辦法

這樣

詳解Python安裝tesserocr遇到的各種問題及解決辦法

這下應該就徹底安裝成功了。。

這下在pycharm里總算不會報錯了,我們來試一下識別這兩張圖片的效果

詳解Python安裝tesserocr遇到的各種問題及解決辦法

詳解Python安裝tesserocr遇到的各種問題及解決辦法

代碼:

from PIL import Image
import tesserocr

imag=Image.open('test.jpg')
print(tesserocr.image_to_text(imag))
imag1=Image.open('image.png')
print(tesserocr.image_to_text(imag1))

輸出結果如下:

詳解Python安裝tesserocr遇到的各種問題及解決辦法

將762408識別成了162408 我也很無奈呀。。。可能是因為版本太菜了吧

以上就是我安裝tesserocr遇到的問題及解決辦法了。其實還可以裝pytesseract這個庫。

安裝pytesseract庫

安裝這個pytesseract庫可比tesserocr方便多了,根本不會報錯,直接pip install pytesseract 完事。。pycharm直接搜索庫

詳解Python安裝tesserocr遇到的各種問題及解決辦法

然后下載就完事,多省事。。。。

看一下識別效果,還是同樣的兩張圖片。

代碼:

import pytesseract
from PIL import Image
import tesserocr

im=Image.open('test.jpg')
print(pytesseract.image_to_string(im))
im1=Image.open('image.png')
print(pytesseract.image_to_string(im1))

運行結果:

詳解Python安裝tesserocr遇到的各種問題及解決辦法

運行結果一樣的,所以我推薦大家使用pytesseract這個庫。

驗證碼識別問題

我打開知乎登錄界面,下載了一張驗證碼圖片:詳解Python安裝tesserocr遇到的各種問題及解決辦法開始識別它。

代碼如下:

import pytesseract
from PIL import Image
import tesserocr



#簡單驗證 特別垃圾
image=Image.open('3.jpg')
result=tesserocr.image_to_text(image)
print(result)


#完全驗證 也不咋地。。
image1=Image.open('3.jpg')
image1=image1.convert('L')
threshold=127
table=[]
for i in range(256):
 if i <threshold:
  table.append(0)
 else:
  table.append(1)
image2=image1.point(table,'1')
image2.show() #二值化灰度處理圖片顯示
result=pytesseract.image_to_string(image2)
print(result)

運行結果:

詳解Python安裝tesserocr遇到的各種問題及解決辦法​都識別失敗了,,,

賊無語,但是灰度化和二值化后的圖片已經很清晰了。。詳解Python安裝tesserocr遇到的各種問題及解決辦法

我都能看出來是H83G了,你識別個H535是個什么鬼。。綜上,這個庫吧,可能效果也不是那么好。先湊活用吧。。

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

向AI問一下細節

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

AI

元朗区| 沛县| 梅州市| 清镇市| 京山县| 宁陵县| 黑山县| 阿图什市| 桐庐县| 沙洋县| 儋州市| 旅游| 大同县| 双牌县| 当雄县| 松潘县| 南郑县| 清新县| 内乡县| 府谷县| 邵阳市| 泗洪县| 万源市| 方正县| 嘉义县| 丹巴县| 喀什市| 耒阳市| 禹城市| 嘉义县| 新巴尔虎右旗| 高碑店市| 买车| 邯郸县| 雷山县| 合川市| 荥经县| 蓬溪县| 崇义县| 营山县| 句容市|