python+pdfplumber:提取和分析PDF中的表格、文本等数据,实现pdf转图片、CSV、JSON、dict

目录

提取文本内容

提取表格内容

提取图片信息

文本框信息数据

将对应页转为图片

转CSV、JSON、字典数据


安装:pip install pdfplumber -i https://pypi.tuna.tsinghua.edu.cn/simple/

提取文本内容

python 复制代码
from pdfplumber import open as op


def read_pdf(pdf_path):
    with op(pdf_path) as pdf:
        for page in pdf.pages:

            # 包含表格在内的所有文本信息
            text = page.extract_text()
            print(text)

提取表格内容

可将提取到的表格数据通过写表的方式插入到excel中或做其他处理

python 复制代码
            for table in page.extract_tables():
                for row in table:
                    print(row)

提取图片信息

python 复制代码
            for img in page.images:
                print(img)

文本框信息数据

python 复制代码
            for wds in page.extract_words():   # 文本框位置及内容
                print(wds) 

将对应页转为图片

resolution参数为像素值,值越大,图片越清晰

python 复制代码
page.to_image(resolution=500).save(rf'{pdf_path.split(".")[0]}-{page.page_number}.png')

转CSV、JSON、字典数据

python 复制代码
            print(page.to_csv())  # 转csv数据
            print(page.to_json(indent=4))  # 转JSON数据
            print(page.to_dict())  # 转字典数据
相关推荐
rainFFrain7 分钟前
qt显示类控件--- Label
开发语言·qt
渡我白衣8 分钟前
深入理解 OverlayFS:用分层的方式重新组织 Linux 文件系统
android·java·linux·运维·服务器·开发语言·人工智能
西游音月9 分钟前
(6)框架搭建:Qt实战项目之主窗体快捷工具条
开发语言·qt
waves浪游15 分钟前
进程概念(上)
linux·运维·服务器·开发语言·c++
百***926524 分钟前
java进阶1——JVM
java·开发语言·jvm
杜子不疼.36 分钟前
【C++】 map/multimap底层原理与逻辑详解
开发语言·c++
司铭鸿37 分钟前
数学图论的艺术:解码最小公倍数图中的连通奥秘
运维·开发语言·算法·游戏·图论
Cocktail_py41 分钟前
JS如何调用wasm
开发语言·javascript·wasm
饮长安千年月1 小时前
玄机-第八章 内存马分析-java03-fastjson
开发语言·python·安全·web安全·网络安全·应急响应
天天爱吃肉82181 小时前
新能源汽车动力系统在环(HIL)半实物仿真测试台架深度解析
人工智能·python·嵌入式硬件·汽车