使用pdfplumber读取PDF

使用pdfplumber读取PDF

pdfplumber安装

安装直接采用pip即可。命令行中输入

pip install pdfplumber

如果要进行可视化的调试,则需要安装ImageMagick

Pdfplumber
ImageMagick
GhostScript

简单使用

最基本的用法如下,读取pdf中的某一页。
import pdfplumber
with pdfplumber.open("path/to/file.pdf") as pdf:
    first_page = pdf.pages[0]
    print(first_page.chars[0])

pdfplumber.pdf中包含了.metadata和.pages两个属性。

.metadata是一个包含pdf信息的字典。
.pages是一个包含页面信息的列表。

每个pdfplumber.page的类中包含了几个主要的属性。

.page_number 页码
.width 页面宽度
.height 页面高度
.objects/.chars/.lines/.rects 这些属性中每一个都是一个列表,每个列表都包含一个字典,每个字典用于说明页面中的对象信息, 包括直线,字符, 方格等位置信息。

一些常用的方法

.extract_text() 用来提页面中的文本,将页面的所有字符对象整理为的那个字符串
.extract_words() 返回的是所有的单词及其相关信息
.extract_tables() 提取页面的表格
.to_image() 用于可视化调试时,返回PageImage类的一个实例

import pdfplumber
import pandas as pd

with pdfplumber.open("财务报告.pdf") as pdf:
    page = pdf.pages[1]   # 第一页的信息
    text = page.extract_text()
    print(text)
    table = page.extract_tables()
    for t in table:
        # 得到的table是嵌套list类型,转化成DataFrame更加方便查看和分析
​        df = pd.DataFrame(t[1:], columns=t[0])
​        print(df)

学习资源1
学习资源2

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Portable Document Format(可移植文档格式),或者PDF是一种文件格式,可以用于跨操作系统的...
    诸葛青云999阅读 4,147评论 0 5
  • ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。 O...
    我想起个好名字阅读 5,442评论 0 9
  • 官网 中文版本 好的网站 Content-type: text/htmlBASH Section: User ...
    不排版阅读 4,462评论 0 5
  • 中国.沈天宇 热 他快要走了 热他要回家吃 果实了 暖正在等热回家 以为这样 他才能吃到 果实 热快要走了
    Handsomedashing阅读 223评论 0 0
  • 星期日/晴 被遗忘的时光-蔡琴 是深秋的滋味,阳光灿烂却疏离,空气干爽又冰凉。 午后突然觉得好无力,大学几年把曾经...
    酒久里个丸子阅读 464评论 1 0