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

溫馨提示×

溫馨提示×

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

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

怎么在Python 3.6 中利用pdfminer對pdf文件進行解析

發布時間:2021-03-23 16:35:30 來源:億速云 閱讀:175 作者:Leah 欄目:開發技術

怎么在Python 3.6 中利用pdfminer對pdf文件進行解析?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

一、安裝pdfminer模塊 

安裝anaconda后,直接可以通過pip安裝

pip install pdfminer3k

怎么在Python 3.6 中利用pdfminer對pdf文件進行解析 

如上圖所示安裝成功。

二、在IDE中進行編碼

#!/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開發規范手冊.pdf'
def parse():
  fp = open(path, 'rb') # 以二進制讀模式打開
  #用文件對象來創建一個pdf文檔分析器
  praser = PDFParser(fp)
  # 創建一個PDF文檔
  doc = PDFDocument()
  # 連接分析器 與文檔對象
  praser.set_document(doc)
  doc.set_parser(praser)

  # 提供初始化密碼
  # 如果沒有密碼 就創建一個空的字符串
  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)

    # 循環遍歷列表,每次處理一個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)):
          with open(r'../../data/pdf/1.txt', 'a') as f:
            results = x.get_text()
            print(results)
            f.write(results + '\n')

if __name__ == '__main__':
  parse()

看完上述內容,你們掌握怎么在Python 3.6 中利用pdfminer對pdf文件進行解析的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

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

AI

遂宁市| 沧源| 重庆市| 噶尔县| 五台县| 泸州市| 西充县| 永城市| 上饶市| 额济纳旗| 伊吾县| 贵州省| 平阳县| 双辽市| 维西| 年辖:市辖区| 泸西县| 阿拉善右旗| 洪雅县| 大石桥市| 邻水| 久治县| 河曲县| 武平县| 平乐县| 吉隆县| 永善县| 北宁市| 桦甸市| 抚顺县| 遵化市| 盘山县| 怀仁县| 华亭县| 枣阳市| 开封县| 淳安县| 府谷县| 南丹县| 浮山县| 柳江县|