Python 中的 Pdfminer 包
PDF 檔案是標準的可移植文件,是最常用的文件格式之一。
我們可以在 Python 中工作和讀取不同型別的檔案。有幾個包可用於處理 PDF 檔案。
pdfminer
就是這樣一個軟體包。它具有處理 PDF 檔案和從此類檔案中讀取文字資料的不同功能。
我們將在下面討論這個包的一些基礎知識。
在 Python 中安裝 pdfminer
包
pdfminer
包不支援最新版本的 Python 3。我們可以在 Python 3 中使用這個名為 pdfminer.six
的包的分支。
我們可以在命令提示符下使用以下 pip
命令安裝它。
pip install pdfminer.six
在 Python 中使用 pdfminer
包
我們可以使用 extract_text()
函式從儲存在裝置上的 PDF 中提取文字,我們可以使用 extract_text()
函式。我們可以在函式中指定檔案的路徑。
請參閱以下示例。
from pdfminer.high_level import extract_text
s = extract_text('sample.pdf')
print(s)
輸出:
Sample PDF from device
我們可以用不同的方式使用同一個函式。
我們可以使用 open()
函式開啟一個 PDF 檔案,建立一個檔案物件,然後使用這個檔案物件來讀取資料。為此,我們需要以 rb
模式開啟檔案。
例如,
from pdfminer.high_level import extract_text
with open('sample.pdf', 'rb') as f:
s = extract_text(f)
print(s)
輸出:
Sample PDF from device
我們可以使用這個函式從網上讀取檔案並提取其內容。
首先,我們將使用 requests.get()
函式中的給定 URL 讀取檔案。可以使用 content()
函式檢索其內容。
然後我們將使用 io.BytesIO()
函式將該檔案載入到記憶體中,並使用 extract_pdf()
函式提取其文字。
檢查下面的語法。
import io
import requests
r = requests.get(url)
s = extract_text(io.BytesIO(response.content))
print(s)
pdfminer
包在 Python 2.7 之前被廣泛使用,但後來由於與 Python 3 的相容性問題而失去了知名度。
然而,已經出現了新的包,它們提供了一種在 Python 中處理 PDF 檔案的更快方法。pyPDF2
就是這樣一種可用的替代方案。
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn