欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

基于Python實現(xiàn)對PDF文件的OCR識別

 更新時間:2016年08月05日 16:25:17   投稿:daisy  
大家可能聽說過使用Python進行OCR識別操作。在Python中,最出名的庫便是Google所資助的tesseract。利用tesseract可以很輕松地對圖像進行識別?,F(xiàn)在問題來了,如果想對一個PDF文檔進行OCR識別,該怎么做呢?下面一起來看看。

最近在做一個項目的時候,需要將PDF文件作為輸入,從中輸出文本,然后將文本存入數(shù)據(jù)庫中。為此,我找尋了很久的解決方案,最終才確定使用tesseract。所以不要浪費時間了,我們開始吧。

1.安裝tesseract

在不同的系統(tǒng)中安裝tesseract非常容易。為了簡便,我們以Ubuntu為例。

Ubuntu中你僅僅需要運行以下命令:

這將會安裝支持3種不同語言的tesseract。

2.安裝PyOCR

現(xiàn)在我們還需要安裝tesseract的Python接口。幸運的是,有許多出色的Python接口。

我們采用最新的一個:

3.安裝Wand和PIL

在我們開始之前,還需要另外安裝兩個依賴包。一個是Wand。它是Imagemagick的Python接口。

我們需要使用它來將PDF文件轉換成圖像:

我們也需要PIL因為PyOCR需要使用它。你可以查看官方文檔以確定如何將PIL安裝到你的操作系統(tǒng)中。

4.熱身

讓我們開始我們的腳本吧。首先,我們需要導入一些重要的庫:

注意:我將從PIL導入的Image模塊改名為PI了,因為如果不這樣做的話,它將和wand.image模塊發(fā)生重名沖突。

5.開始

現(xiàn)在我們需要獲得OCR庫(在本例中,即tesseract)的句柄以及我們在PyOCR中將使用的語言:

我們使用tool.get_available_languages里的第二種語言,因為之前我曾嘗試過,第二種語言就是英語。

接著,我們需要建立兩個列表,用于存儲我們的圖像和最終的文本。

下一步,我們需要采用wand將一個PDF文件轉成jpeg文件。讓我們試一試吧!

注意:PDF_FILE_NAME替換成當前路徑下的一個可用的PDF文件名。

wand已經(jīng)將PDF中所有的獨立頁面都轉成了獨立的二進制圖像對象。我們可以遍歷這個大對象,并把它們加入到req_image序列中去。

現(xiàn)在,我們僅僅需要在圖像對象上運行OCR即可,非常簡單:

現(xiàn)在,所有識別出的文本已經(jīng)加到了final_text序列中了。你可以任意地使用它。以上就是利用Python對PDF文件做OCR識別的全部內(nèi)容,希望這個教程能夠幫助到你們!

英文原文:https://pythontips.com/2016/02/25/ocr-on-pdf-files-using-python/

譯者:LuCima

相關文章

  • Python函數(shù)基礎

    Python函數(shù)基礎

    這篇文章主要從函數(shù)開始介紹展開Python函數(shù),以最基本的函數(shù)定義方法描述,需要的朋友可以參考下文簡單的介紹
    2021-08-08
  • Python模擬登陸實現(xiàn)代碼

    Python模擬登陸實現(xiàn)代碼

    本篇文章主要介紹了Python模擬登陸實現(xiàn)代碼,這里整理了詳細的代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • keras中的loss、optimizer、metrics用法

    keras中的loss、optimizer、metrics用法

    這篇文章主要介紹了keras中的loss、optimizer、metrics用法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • Python爬蟲之網(wǎng)頁圖片抓取的方法

    Python爬蟲之網(wǎng)頁圖片抓取的方法

    最近小編一直在學習python的東西,今天小編給大家分享基于python寫的一個爬蟲程序,能實現(xiàn)簡單的網(wǎng)頁圖片下載,具體實例代碼大家參考下本文
    2018-07-07
  • 詳解python實現(xiàn)郵件解析的方法

    詳解python實現(xiàn)郵件解析的方法

    這篇文章主要為大家介紹了python實現(xiàn)郵件解析的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • python中數(shù)組和列表的簡單實例

    python中數(shù)組和列表的簡單實例

    ,Python數(shù)據(jù)類型分為很多種,其中包括元組、字典、列表等,下面這篇文章主要給大家介紹了python中數(shù)組和列表使用的相關資料,以及python列表和Numpy數(shù)組的區(qū)別,需要的朋友可以參考下
    2022-03-03
  • CentOS 7下安裝Python3.6 及遇到的問題小結

    CentOS 7下安裝Python3.6 及遇到的問題小結

    這篇文章主要介紹了CentOS 7下安裝Python3.6 及遇到的問題小結,需要的朋友可以參考下
    2018-11-11
  • Python中的XML庫4Suite Server的介紹

    Python中的XML庫4Suite Server的介紹

    這篇文章主要介紹了Python中的XML庫4Suite Server,來自于IBM官方網(wǎng)站,需要的朋友可以參考下
    2015-04-04
  • Python 3 實現(xiàn)定義跨模塊的全局變量和使用教程

    Python 3 實現(xiàn)定義跨模塊的全局變量和使用教程

    這篇文章主要介紹了Python 3 實現(xiàn)定義跨模塊的全局變量和使用,本文通過實例代碼相結合的形式給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-07-07
  • python 多維高斯分布數(shù)據(jù)生成方式

    python 多維高斯分布數(shù)據(jù)生成方式

    今天小編就為大家分享一篇python 多維高斯分布數(shù)據(jù)生成方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12

最新評論