91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python實現pdf轉換成word/txt純文本文件

發布時間:2020-09-27 06:51:07 來源:腳本之家 閱讀:200 作者:initiallysunny 欄目:開發技術

本文實例為大家分享了python實現pdf轉word/txt,供大家參考,具體內容如下

依賴包:pdfminer3k

可以通過pip安裝;也可以到官網下載,解壓,進入文件夾,輸入命令setup.py install安裝軟件。

源代碼:

#!/usr/bin/python 
# -*- coding: utf-8 -*- 
 
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 * 
from pdfminer.pdfinterp import PDFTextExtractionNotAllowed 
 
''''' 
解析pdf文件,獲取文件中包含的各種對象 
''' 
 
# 解析pdf文件函數 
def parse(pdf_path): 
  fp = open(pdf_path, 'rb') # 以二進制讀模式打開 
  # 用文件對象來創建一個pdf文檔分析器 
  parser = PDFParser(fp) 
  # 創建一個PDF文檔 
  doc = PDFDocument() 
  # 連接分析器 與文檔對象 
  parser.set_document(doc) 
  doc.set_parser(parser) 
 
  # 提供初始化密碼 
  # 如果沒有密碼 就創建一個空的字符串 
  doc.initialize() 
 
  # 檢測文檔是否提供txt轉換,不提供就忽略 
  if not doc.is_extractable: 
    raise PDFTextExtractionNotAllowed 
  else: 
    # 創建PDf 資源管理器 來管理共享資源 
    rsrcmgr = PDFResourceManager() 
    # 創建一個PDF設備對象 
    laparams = LAParams() 
    device = PDFPageAggregator(rsrcmgr, laparams=laparams) 
    # 創建一個PDF解釋器對象 
    interpreter = PDFPageInterpreter(rsrcmgr, device) 
 
    # 用來計數頁面,圖片,曲線,figure,水平文本框等對象的數量 
    num_page, num_image, num_curve, num_figure, num_TextBoxHorizontal = 0, 0, 0, 0, 0 
 
    # 循環遍歷列表,每次處理一個page的內容 
    for page in doc.get_pages(): # doc.get_pages() 獲取page列表 
      num_page += 1 # 頁面增一 
      interpreter.process_page(page) 
      # 接受該頁面的LTPage對象 
      layout = device.get_result() 
      for x in layout: 
        if isinstance(x,LTImage): # 圖片對象 
          num_image += 1 
        if isinstance(x,LTCurve): # 曲線對象 
          num_curve += 1 
        if isinstance(x,LTFigure): # figure對象 
          num_figure += 1 
        if isinstance(x, LTTextBoxHorizontal): # 獲取文本內容 
          num_TextBoxHorizontal += 1 # 水平文本框對象增一 
          # 保存文本內容 
          with open(r'test.doc', 'a',encoding='utf-8') as f:  #生成doc文件的文件名及路徑 
            results = x.get_text() 
            f.write(results) 
            f.write('\n') 
    print('對象數量:\n','頁面數:%s\n'%num_page,'圖片數:%s\n'%num_image,'曲線數:%s\n'%num_curve,'水平文本框:%s\n' 
       %num_TextBoxHorizontal) 
 
 
if __name__ == '__main__': 
  pdf_path = r'test.pdf' #pdf文件路徑及文件名 
  parse(pdf_path) 

此腳本只能將pdf文件轉換成純文本文件,沒有任何格式。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

盈江县| 南城县| 谢通门县| 吴江市| 襄城县| 清新县| 招远市| 南靖县| 喀喇沁旗| 环江| 潮安县| 沙湾县| 蒙阴县| 兴文县| 资源县| 南皮县| 双桥区| 湟中县| 潜山县| 易门县| 霍城县| 台安县| 夏津县| 泗阳县| 诸暨市| 土默特左旗| 黄冈市| 绥棱县| 宝坻区| 中卫市| 常宁市| 台州市| 平罗县| 上杭县| 伊吾县| 濉溪县| 桃园县| 太仓市| 梁河县| 高阳县| 昌图县|