Python 3.6 中使用pdfminer解析pdf文件的實(shí)現(xiàn)
更新時(shí)間:2019年09月25日 11:13:54 作者:W-大泡泡
這篇文章主要介紹了Python 3.6 中使用pdfminer解析pdf文件的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
所使用python環(huán)境為最新的3.6版本
一、安裝pdfminer模塊
安裝anaconda后,直接可以通過(guò)pip安裝
pip install pdfminer3k
如上圖所示安裝成功。
二、在IDE中進(jìn)行編碼
#!/usr/bin/env python # encoding: utf-8 """ @author: wugang @software: PyCharm @file: prase_pdf.py @time: 2017/3/3 0003 11:16 """ import sys import importlib importlib.reload(sys) 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 ''' 解析pdf 文本,保存到txt文件中 ''' path = r'../../data/pdf/阿里巴巴Java開(kāi)發(fā)規(guī)范手冊(cè).pdf' def parse(): fp = open(path, 'rb') # 以二進(jìn)制讀模式打開(kāi) #用文件對(duì)象來(lái)創(chuàng)建一個(gè)pdf文檔分析器 praser = PDFParser(fp) # 創(chuàng)建一個(gè)PDF文檔 doc = PDFDocument() # 連接分析器 與文檔對(duì)象 praser.set_document(doc) doc.set_parser(praser) # 提供初始化密碼 # 如果沒(méi)有密碼 就創(chuàng)建一個(gè)空的字符串 doc.initialize() # 檢測(cè)文檔是否提供txt轉(zhuǎn)換,不提供就忽略 if not doc.is_extractable: raise PDFTextExtractionNotAllowed else: # 創(chuàng)建PDf 資源管理器 來(lái)管理共享資源 rsrcmgr = PDFResourceManager() # 創(chuàng)建一個(gè)PDF設(shè)備對(duì)象 laparams = LAParams() device = PDFPageAggregator(rsrcmgr, laparams=laparams) # 創(chuàng)建一個(gè)PDF解釋器對(duì)象 interpreter = PDFPageInterpreter(rsrcmgr, device) # 循環(huán)遍歷列表,每次處理一個(gè)page的內(nèi)容 for page in doc.get_pages(): # doc.get_pages() 獲取page列表 interpreter.process_page(page) # 接受該頁(yè)面的LTPage對(duì)象 layout = device.get_result() # 這里layout是一個(gè)LTPage對(duì)象 里面存放著 這個(gè)page解析出的各種對(duì)象 一般包括LTTextBox, LTFigure, LTImage, LTTextBoxHorizontal 等等 想要獲取文本就獲得對(duì)象的text屬性, for x in layout: if (isinstance(x, LTTextBoxHorizontal)): with open(r'../../data/pdf/1.txt', 'a') as f: results = x.get_text() print(results) f.write(results + '\n') if __name__ == '__main__': parse()
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python爬蟲(chóng)設(shè)置代理IP的方法(爬蟲(chóng)技巧)
這篇文章主要介紹了Python爬蟲(chóng)設(shè)置代理IP的方法(爬蟲(chóng)技巧),需要的朋友可以參考下2018-03-03Python圖像處理之透視變換的實(shí)戰(zhàn)應(yīng)用
透視變換(Perspective Transformation)是將圖片投影到一個(gè)新的視平面(Viewing Plane),也稱(chēng)作投影映射(Projective Mapping),下面這篇文章主要給大家介紹了關(guān)于Python圖像處理之透視變換的相關(guān)資料,需要的朋友可以參考下2021-08-08基于python實(shí)現(xiàn)操作git過(guò)程代碼解析
這篇文章主要介紹了基于python實(shí)現(xiàn)操作git過(guò)程代碼解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07使用Python從零開(kāi)始擼一個(gè)區(qū)塊鏈
對(duì)數(shù)字貨幣的崛起感到新奇的我們,并且想知道其背后的技術(shù)——區(qū)塊鏈?zhǔn)窃鯓訉?shí)現(xiàn)的。這篇文章主要介紹了使用Python從零開(kāi)始擼一個(gè)區(qū)塊鏈,需要的朋友可以參考下2018-03-03Python3將jpg轉(zhuǎn)為pdf文件的方法示例
這篇文章主要介紹了Python3將jpg轉(zhuǎn)為pdf文件的方法,結(jié)合完整實(shí)例形式分析了Python3針對(duì)jpg轉(zhuǎn)pdf格式的文件讀寫(xiě)、編碼裝換等相關(guān)操作技巧,需要的朋友可以參考下2019-12-12