python讀取pdf檔案並轉換成txt檔案

2021-09-19 13:51:20 字數 1875 閱讀 8387

官網

文件中英文pdf都可以,而且處理速度很快,一秒可以處理10頁左右

python2:

pip install pdfminer
python3:

pip install pdfminer3k
pdf2txt.py

from pdfminer.pdfparser import pdfparser, pdfdocument

from pdfminer.pdfinterp import pdfresourcemanager, pdfpageinterpreter

from pdfminer.converter import pdfpageaggregator

from pdfminer.layout import lttextboxhorizontal, laparams

from pdfminer.pdfinterp import pdftextextractionnotallowed

import logging

# 不顯示warning

logging.propagate =

false

logging.getlogger(

).setlevel(logging.error)

pdf_filename =

"1.pdf"

txt_filename =

"out.txt"

device = pdfpageaggregator(pdfresourcemanager(

), laparams=laparams())

interpreter = pdfpageinterpreter(pdfresourcemanager(

), device)

doc = pdfdocument(

)parser = pdfparser(

open

(pdf_filename,

'rb'))

parser.set_document(doc)

doc.set_parser(parser)

doc.initialize(

)# 檢測文件是否提供txt轉換,不提供就忽略

ifnot doc.is_extractable:

raise pdftextextractionnotallowed

else

:with

open

(txt_filename,

'w', encoding=

"utf-8"

)as fw:

print

("num page:{}"

.format

(len

(list

(doc.get_pages())

)))for page in doc.get_pages():

interpreter.process_page(page)

# 接受該頁面的ltpage物件

layout = device.get_result(

)# 這裡layout是乙個ltpage物件 裡面存放著 這個page解析出的各種物件

# 一般包括lttextbox, ltfigure, ltimage, lttextboxhorizontal 等等

# 想要獲取文字就獲得物件的text屬性,

for x in layout:

ifisinstance

(x, lttextboxhorizontal)

: results = x.get_text(

) fw.write(results)

python讀取pdf檔案

pdfplumber是乙個可以處理pdf格式資訊的庫。可以查詢關於每個文字字元 矩陣 和行的詳細資訊,也可以對 進行提取並進行視覺化除錯。文件參考 安裝直接採用pip即可。命令列中輸入 pip install pdfplumber import pdfplumber with pdfplumber....

python讀取csv檔案並轉為list

import os import pandas as pd import numpy as np from itertools import chain os.getcwd 讀取當前路徑 path os.getcwd eclipse nnpom.csv df pd.dataframe pd.read...

python讀取pdf檔案獲取pdf的文字內容

python處理pdf檔案的所有庫 import pypdf2 from urllib.request import urlopen file open d ltn20190716133.pdf rb filereader pypdf2.pdffilereader file pdf page num...