您好,登錄后才能下訂單哦!
這篇文章主要為大家詳細介紹了使用Python怎么將pdf文檔轉換成txt文檔,文中示例代碼介紹的非常詳細,具有一定的參考價值,發現的小伙伴們可以參考一下:
Python是一種編程語言,內置了許多有效的工具,Python幾乎無所不能,該語言通俗易懂、容易入門、功能強大,在許多領域中都有廣泛的應用,例如最熱門的大數據分析,人工智能,Web開發等。
import os.path 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 class CPdf2TxtManager(): ''''' classdocs ''' def __init__(self): ''''' Constructor ''' def changePdfToText(self, filePath): file = open(path, 'rb') # 以二進制讀模式打開 #用文件對象來創建一個pdf文檔分析器 praser = PDFParser(file) # 創建一個PDF文檔 doc = PDFDocument() # 連接分析器 與文檔對象 praser.set_document(doc) doc.set_parser(praser) # 提供初始化密碼 # 如果沒有密碼 就創建一個空的字符串 doc.initialize() # 檢測文檔是否提供txt轉換,不提供就忽略 if not doc.is_extractable: raise PDFTextExtractionNotAllowed # 創建PDf 資源管理器 來管理共享資源 rsrcmgr = PDFResourceManager() # 創建一個PDF設備對象 laparams = LAParams() device = PDFPageAggregator(rsrcmgr, laparams=laparams) # 創建一個PDF解釋器對象 interpreter = PDFPageInterpreter(rsrcmgr, device) pdfStr = '' # 循環遍歷列表,每次處理一個page的內容 for page in doc.get_pages(): # doc.get_pages() 獲取page列表 interpreter.process_page(page) # 接受該頁面的LTPage對象 layout = device.get_result() # 這里layout是一個LTPage對象 里面存放著 這個page解析出的各種對象 一般包括LTTextBox, LTFigure, LTImage, LTTextBoxHorizontal 等等 想要獲取文本就獲得對象的text屬性, for x in layout: if (isinstance(x, LTTextBoxHorizontal)): pdfStr = pdfStr + x.get_text() + '\n' fileNames = os.path.splitext(filePath) file2 = open(fileNames[0] + '.txt','wb')#保存這些內容 file2.write(pdfStr.encode()) file2.close() file.close() if __name__ == '__main__': ''''' 解析pdf 文本,保存到txt文件中 ''' path = r'C:\Users\Administrator\Desktop\《精力管理》.pdf' pdf2TxtManager = CPdf2TxtManager() pdf2TxtManager.changePdfToText(path)
以上就是億速云小編為大家收集整理的使用Python怎么將pdf文檔轉換成txt文檔,如何覺得億速云網站的內容還不錯,歡迎將億速云網站推薦給身邊好友。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。