python PFD-表格处理
https://pythondict.com/ai/camelot/
pdf表格处理模块:import camelot
---------------------------------------------------------------------------------
pdf第三方库比较:
https://dothinking.github.io/2021-01-02-Python%E5%A4%84%E7%90%86PDF%E7%9A%84%E7%AC%AC%E4%B8%89%E6%96%B9%E5%BA%93%E5%AF%B9%E6%AF%94/
----------------------------
https://blog.csdn.net/fenglepeng/article/details/109002534
# encoding: 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 LTTextBoxHorizontal,LAParams from pdfminer.pdfinterp import PDFTextExtractionNotAllowed path ="C:\\Users\\admin\\Desktop\\t.pdf" def parse(): fp = open(path, 'rb') #用文件对象来创建一个pdf文档分析器PDFParser praser = PDFParser(fp) # 创建一个PDF文档PDFDocument doc = PDFDocument() # 连接分析器 与文档对象 praser.set_document(doc) doc.set_parser(praser) # 提供初始化密码,如果没有密码 就创建一个空的字符串 doc.initialize() # 检测文档是否提供txt转换,不提供就忽略 if not doc.is_extractable: raise PDFTextExtractionNotAllowed else: # 创建PDf 资源管理器 来管理共享资源PDFResourceManager rsrcmgr = PDFResourceManager() # 创建一个PDF设备对象LAParams laparams = LAParams() # 创建聚合器,用于读取文档的对象PDFPageAggregator device = PDFPageAggregator(rsrcmgr, laparams=laparams) # 创建一个PDF解释器对象,对文档编码,解释成Python能够识别的格式:PDFPageInterpreter interpreter = PDFPageInterpreter(rsrcmgr, device) # 循环遍历列表,每次处理一个page的内容 for page in doc.get_pages(): # doc.get_pages() 获取page列表 # 利用解释器的process_page()方法解析读取单独页数 interpreter.process_page(page) # 这里layout是一个LTPage对象,里面存放着这个page解析出的各种对象,一般包括LTTextBox, LTFigure, LTImage, LTTextBoxHorizontal等等,想要获取文本就获得对象的text属性, # 使用聚合器get_result()方法获取页面内容 layout = device.get_result() for x in layout: if (isinstance(x, LTTextBoxHorizontal)): #需要写出编码格式 with open(r'C:\Users\admin\Desktop\1.txt', 'a',encoding='utf-8') as f: results = x.get_text() f.write(results + '\n') if __name__ == '__main__': parse()
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?