91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

如何安裝Python3爬蟲利器tesserocr

發布時間:2020-08-05 11:19:58 來源:億速云 閱讀:239 作者:小新 欄目:編程語言

小編給大家分享一下如何安裝Python3爬蟲利器tesserocr,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

在爬蟲過程中,難免會遇到各種各樣的驗證碼,而大多數驗證碼還是圖形驗證碼,這時候我們可以直接用OCR來識別。

1. OCR

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

例如,對于如圖1-22和圖1-23所示的驗證碼,我們可以使用OCR技術來將其轉化為電子文本,然后爬蟲將識別結果提交給服務器,便可以達到自動識別驗證碼的過程。

如何安裝Python3爬蟲利器tesserocr

圖1-22 驗證碼

如何安裝Python3爬蟲利器tesserocr

圖1-23 驗證碼

tesserocr是Python的一個OCR識別庫,但其實是對tesseract做的一層Python API封裝,所以它的核心是tesseract。因此,在安裝tesserocr之前,我們需要先安裝tesseract。

2. 相關鏈接

tesserocr GitHub:https://github.com/sirfz/tesserocr

tesserocr PyPI:https://pypi.python.org/pypi/tesserocr

tesseract下載地址:http://digi.bib.uni-mannheim.de/tesseract

tesseract GitHub:https://github.com/tesseract-ocr/tesseract

tesseract語言包:https://github.com/tesseract-ocr/tessdata

tesseract文檔:https://github.com/tesseract-ocr/tesseract/wiki/Documentation

3. Windows下的安裝

在Windows下,首先需要下載tesseract,它為tesserocr提供了支持。

進入下載頁面,可以看到有各種.exe文件的下載列表,這里可以選擇下載3.0版本。圖1-24所示為3.05版本。

如何安裝Python3爬蟲利器tesserocr

圖1-24 下載頁面

其中文件名中帶有dev的為開發版本,不帶dev的為穩定版本,可以選擇下載不帶dev的版本,例如可以選擇下載tesseract-ocr-setup-3.05.01.exe。

下載完成后雙擊,此時會出現如圖1-25所示的頁面。

如何安裝Python3爬蟲利器tesserocr

圖1-25 安裝頁面

此時可以勾選Additional language data(download)選項來安裝OCR識別支持的語言包,這樣OCR便可以識別多國語言。然后一路點擊Next按鈕即可。

接下來,再安裝tesserocr即可,此時直接使用pip安裝:

pip3 install tesserocr pillow

4. Linux下的安裝

對于Linux來說,不同系統已經有了不同的發行包了,它可能叫作tesseract-ocr或者tesseract,直接用對應的命令安裝即可。

Ubuntu、Debian和Deepin

在Ubuntu、Debian和Deepin系統下,安裝命令如下:

sudo apt-get install -y tesseract-ocr libtesseract-dev libleptonica-dev

CentOS、Red Hat

在CentOS和Red Hat系統下,安裝命令如下:

yum install -y tesseract

在不同發行版本運行如上命令,即可完成tesseract的安裝。

安裝完成后,便可以調用tesseract命令了。

接著,我們查看一下其支持的語言:

tesseract --list-langs

運行結果示例:

List of available languages (3):
eng
osd
equ

結果顯示它只支持幾種語言,如果想要安裝多國語言,還需要安裝語言包,官方叫作tessdata(其下載鏈接為:https://github.com/tesseract-ocr/tessdata)。

利用Git命令將其下載下來并遷移到相關目錄即可,不同版本的遷移命令如下所示。

在Ubuntu、Debian和Deepin系統下的遷移命令如下:

git clone https://github.com/tesseract-ocr/tessdata.git
sudo mv tessdata/* /usr/share/tesseract-ocr/tessdata

在CentOS和Red Hat系統下的遷移命令如下:

git clone https://github.com/tesseract-ocr/tessdata.git
sudo mv tessdata/* /usr/share/tesseract/tessdata

這樣就可以將下載下來的語言包全部安裝了。

這時我們重新運行列出所有語言的命令:

tesseract --list-langs

結果如下:

List of available languages (107):
afr
amh
ara
asm
aze
aze_cyrl
bel
ben
bod
bos
bul
cat
ceb
ces
chi_sim
chi_tra
...

可以發現,這里列出的語言就多了很多,比如chi_sim就代表簡體中文,這就證明語言包安裝成功了。

接下來再安裝tesserocr即可,這里直接使用pip安裝:

pip3 install tesserocr pillow

5. Mac下的安裝

在Mac下,我們首先使用Homebrew安裝ImageMagick和tesseract庫:

brew install imagemagick 
brew install tesseract --all-languages

接下來再安裝tesserocr即可:

pip3 install tesserocr pillow

這樣我們便完成了tesserocr的安裝。

6. 驗證安裝

接下來,我們可以使用tesseract和tesserocr來分別進行測試。

下面我們以如圖1-26所示的圖片為樣例進行測試。

如何安裝Python3爬蟲利器tesserocr

圖1-26 測試樣例

該圖片的鏈接為https://raw.githubusercontent.com/Python3WebSpider/TestTess/master/image.png,可以直接保存或下載。 

首先用命令行進行測試,將圖片下載下來并保存為image.png,然后用tesseract命令測試:

tesseract image.png result -l eng && cat result.txt

運行結果如下:

Tesseract Open Source OCR Engine v3.05.01 with Leptonica
Python3WebSpider

這里我們調用了tesseract命令,其中第一個參數為圖片名稱,第二個參數result為結果保存的目標文件名稱,-l指定使用的語言包,在此使用英文(eng)。然后,再用cat命令將結果輸出。

運行結果便是圖片的識別結果:Python3WebSpider。可以看到,這時已經成功將圖片文字轉為電子文本了。

然后還可以利用Python代碼來測試,這里就需要借助于tesserocr庫了,測試代碼如下:

import tesserocr
from PIL import Image
image = Image.open('image.png')
print(tesserocr.image_to_text(image))

我們首先利用Image讀取了圖片文件,然后調用了tesserocr的image_to_text()方法,再將其識別結果輸出。

運行結果如下:

Python3WebSpider

另外,我們還可以直接調用file_to_text()方法,這可以達到同樣的效果:

import tesserocr
print(tesserocr.file_to_text('image.png'))

運行結果:

Python3WebSpider

如果成功輸出結果,則證明tesseract和tesserocr都已經安裝成功。

以上是如何安裝Python3爬蟲利器tesserocr的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

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

AI

凉城县| 汾阳市| 安陆市| 天峻县| 大港区| 红桥区| 滦平县| 兴隆县| 沙河市| 秦安县| 西昌市| 桂林市| 建平县| 台南市| 三亚市| 德阳市| 永泰县| 石河子市| 普安县| 芜湖市| 江源县| 利津县| 卓尼县| 柘城县| 双柏县| 清原| 娄烦县| 嘉祥县| 什邡市| 镇安县| 正蓝旗| 沿河| 崇文区| 鄂托克旗| 乌审旗| 临漳县| 桃园市| 遂宁市| 汤原县| 抚宁县| 济阳县|