亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

您的位置:首頁技術(shù)文章
文章詳情頁

python解析PDF程序代碼

瀏覽:5日期:2022-06-16 11:18:41
說在前面

和word的文本相比PDF更類似于一張張圖片,圖上放著一個(gè)個(gè)文字。對(duì)其的解析是將圖片上的文字提取到text文件中,方便之后的分析。

添加依賴

在python的環(huán)境中安裝PDFminer3k,不要裝錯(cuò)了,一開始我裝的是PDFminer,結(jié)果有幾個(gè)包不能用pip install pdfminer3k

源程序代碼

#!/usr/bin/env python3# -*- coding:utf-8 -*-# pip3 install pdfminer3kimport osfrom pdfminer.converter import PDFPageAggregatorfrom pdfminer.layout import LAParams, LTTextBoxHorizontalfrom pdfminer.pdfparser import PDFParser, PDFDocumentfrom pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter, PDFTextExtractionNotAllowedfrom pdfminer.pdfdevice import PDFDevicedef read_pdf(pdf_name, result_name): # 以二進(jìn)制讀模式打開 fp = open(pdf_name, ’rb’) # 用文件對(duì)象來創(chuàng)建一個(gè)pdf文檔分析器 parser = PDFParser(fp) # 創(chuàng)建一個(gè)pdf文檔 doc = PDFDocument() # 連接分析器 與文檔對(duì)象 parser.set_document(doc) doc.set_parser(parser) # 提供初始密碼,如果沒有密碼 就創(chuàng)建一個(gè)空的字符串 doc.initialize(’’) # 檢測(cè)文檔是否提供txt轉(zhuǎn)換,不提供就拋出異常 if not doc.is_extractable:raise PDFTextExtractionNotAllowed # 創(chuàng)建PDf 資源管理器 來管理共享資源 rsrcmgr = PDFResourceManager() # 創(chuàng)建一個(gè)PDF設(shè)備對(duì)象 laparams = LAParams() device = PDFPageAggregator(rsrcmgr, laparams=laparams) # 創(chuàng)建一個(gè)PDF解釋器對(duì)象 interpreter = PDFPageInterpreter(rsrcmgr, device) with open(result_name, 'w', encoding='u8') as fd_out:# 循環(huán)遍歷列表,每次處理一個(gè)page的內(nèi)容for i, page in enumerate(doc.get_pages(), 1): index = '===========《第{}頁》==========='.format(i) print(index) fd_out.write(index + 'n') interpreter.process_page(page) # 接受該頁面的LTPage對(duì)象 layout = device.get_result() for x in layout:# 這里layout是一個(gè)LTPage對(duì)象 里面存放著 這個(gè)page解析出的各種對(duì)象 一般包括LTTextBox,# LTFigure, LTImage, LTTextBoxHorizontal 等等 想要獲取文本就獲得對(duì)象的text屬性if not isinstance(x, LTTextBoxHorizontal): continueresults = x.get_text()print(results)fd_out.write(results)if __name__ == ’__main__’: # 獲取讀取文件夾 filePath = ’../PDFfile’ #遍歷文件夾 for i,j,k in os.walk(filePath):for m in k: # 格式化輸出的名稱和地址 result = ’../TextFile/’ + m[:-4] + ’.txt’ # 格式化源文件路徑 fileName = i + ’/’ + m # 調(diào)用函數(shù)解析 read_pdf(fileName, result)

參考以下代碼內(nèi)容:python 讀取pdf文本內(nèi)容

#!/usr/bin/env python3#-*- coding:utf-8 -*-# pip3 install pdfminer3k from pdfminer.converter import PDFPageAggregatorfrom pdfminer.layout import LAParams, LTTextBoxHorizontalfrom pdfminer.pdfparser import PDFParser, PDFDocumentfrom pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter, PDFTextExtractionNotAllowedfrom pdfminer.pdfdevice import PDFDevice def read_pdf(pdf_name, result_name): # 以二進(jìn)制讀模式打開 fp = open(pdf_name, ’rb’) # 用文件對(duì)象來創(chuàng)建一個(gè)pdf文檔分析器 parser = PDFParser(fp) # 創(chuàng)建一個(gè)pdf文檔 doc = PDFDocument() # 連接分析器 與文檔對(duì)象 parser.set_document(doc) doc.set_parser(parser) # 提供初始密碼,如果沒有密碼 就創(chuàng)建一個(gè)空的字符串 doc.initialize(’’) # 檢測(cè)文檔是否提供txt轉(zhuǎn)換,不提供就拋出異常 if not doc.is_extractable:raise PDFTextExtractionNotAllowed # 創(chuàng)建PDf 資源管理器 來管理共享資源 rsrcmgr = PDFResourceManager() # 創(chuàng)建一個(gè)PDF設(shè)備對(duì)象 laparams = LAParams() device = PDFPageAggregator(rsrcmgr, laparams=laparams) # 創(chuàng)建一個(gè)PDF解釋器對(duì)象 interpreter = PDFPageInterpreter(rsrcmgr, device) with open(result_name,'w',encoding='u8') as fd_out:# 循環(huán)遍歷列表,每次處理一個(gè)page的內(nèi)容for i,page in enumerate(doc.get_pages(),1): index = '===========《第{}頁》==========='.format(i) print(index) fd_out.write(index + 'n') interpreter.process_page(page) # 接受該頁面的LTPage對(duì)象 layout = device.get_result() for x in layout:# 這里layout是一個(gè)LTPage對(duì)象 里面存放著 這個(gè)page解析出的各種對(duì)象 一般包括LTTextBox,# LTFigure, LTImage, LTTextBoxHorizontal 等等 想要獲取文本就獲得對(duì)象的text屬性if not isinstance(x, LTTextBoxHorizontal): continueresults = x.get_text()print(results)fd_out.write(results) if __name__ == ’__main__’: pdf_name = ’test.pdf’ result = ’test.txt’ read_pdf(pdf_name, result)

以上就是python解析PDF的詳細(xì)內(nèi)容,更多關(guān)于python解析PDF的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 欧美精品午夜 | 国产精品久久久久无码av | 国内在线播放 | 黄色a∨ | 国产精品久久久久久福利漫画 | 日本一级爽毛片在线看 | 日韩中文字幕在线观看视频 | 欧美啪啪一级毛片 | 一区精品视频 | 美国一级免费毛片 | 国产高清在线 | 欧美精品一二区 | 久久一本色系列综合色 | 日本免费大黄在线观看 | 天天做天天爱夜夜大爽完整 | 欧美亚洲国产日韩一区二区三区 | 九九九九精品视频在线播放 | 亚洲精品专区一区二区欧美 | 欧美日韩精品一区二区三区 | 欧美一级xxxx俄罗斯一级 | 男人的亚洲天堂 | 国产精品亚洲精品日韩已方 | 97影院理论在线观看 | 男女午夜| 九九国产在线视频 | 美女流白浆网站 | 制服诱惑中文字幕 | 国产人成免费视频 | 福利片免费一区二区三区 | 综合久久久久久久 | 精品国产精品久久一区免费式 | 最新欧美精品一区二区三区不卡 | 狠色狠狠色狠狠狠色综合久久 | 亚洲精品国产综合久久一线 | 国产成人高清精品免费观看 | 国产成人精品免费久久久久 | 另类女最新视频 | 被老外玩爽的中国美女视频 | 国产黄色小视频在线观看 | 亚洲欧美日韩国产vr在线观 | 丁香婷婷影音先锋5566 |