python解析pdf(轉化pdf爲文本)歡迎提問

雖然下面的代碼是在別地學的,但是我也是被挖坑了好多次 

# -*- coding: utf-8 -*-
from pdfminer.pdfparser import PDFParser
from pdfminer.pdfdocument import PDFDocument
from pdfminer.pdfpage import PDFPage
from pdfminer.pdfpage import PDFTextExtractionNotAllowed
from pdfminer.pdfinterp import PDFResourceManager
from pdfminer.pdfinterp import PDFPageInterpreter
from pdfminer.pdfdevice import PDFDevice
from pdfminer.layout import *
from pdfminer.converter import PDFPageAggregator
import os

fp = open('424B536CA3234140B86432E219F6E9F2.pdf', 'rb')
#來創建一個pdf文檔分析器
parser = PDFParser(fp)
#創建一個PDF文檔對象存儲文檔結構
document = PDFDocument(parser)
# 檢查文件是否允許文本提取
if not document.is_extractable:
    raise PDFTextExtractionNotAllowed
else:
    # 創建一個PDF資源管理器對象來存儲共賞資源
    rsrcmgr=PDFResourceManager()
    # 設定參數進行分析
    laparams=LAParams()
    # 創建一個PDF設備對象
    # device=PDFDevice(rsrcmgr)
    device=PDFPageAggregator(rsrcmgr,laparams=laparams)
    # 創建一個PDF解釋器對象
    interpreter=PDFPageInterpreter(rsrcmgr,device)
    # 處理每一頁
    for page in PDFPage.create_pages(document):
        interpreter.process_page(page)
        # 接受該頁面的LTPage對象
        layout=device.get_result()
        for x in layout:
            if(isinstance(x,LTTextBoxHorizontal)):
                with open('a.txt','a') as f:
                    f.write(x.get_text()+'\n')
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章