自动化办公-PDF篇

        本章介绍pdf自动化办公——pdfplumber的使用。本文由于特殊因素,本人觉得还有所欠缺,建议先看结尾。

目录

导入库及文件

1.  获取页码

2.  获取一个页面上的一个表格

3.  获取一个页面上的全部表格

4.  获取一个页面上全部文字

5.  获取当前页的页码

结尾


导入库及文件

import pdfplumber
file = pdfplumber.open(r"C:\Users\流光、月影\Desktop\pdfplumber.pdf")

1.  获取页码

        file.pages

print(file.pages)
图1

        输出页码。如果想要统计总页码数,可以使用 len函数。以下所有操作都基于此之上。

2.  获取一个页面上的一个表格

        page.extract_table()

        由于该文件为某学校的文件,这里就不提供文件及代码了,仅供截图,请原谅。

图2

        如果想要把该表转换成表格,可以通过pandas完成:

 

        与原表并无多大区别。

3.  获取一个页面上的全部表格

        page.extract_tables()

图3

        输出的内容相比于图2,首尾多了一个[]。我们可以看开头,一个[为一个列表(一行或一列);两个[[为一个面,相当于一个excel表格那样;三个[[[为多个面组成的三维结构,可表示多个面。这个案例一个面就相当于一个表。想要清楚地理解这个知识,需要有numpy和pandas基础。

4.  获取一个页面上全部文字

        page.extract_text()

5.  获取当前页的页码

        page.page_number    准确来说,是第几页,而不是页码,因为页码可以从任意页开始。

        file.pages[1] 表示第2页( file.pages[0] 表示第1页)。

结尾

        本文本人认为不够理想,因为没有给代码,但是由于文件的原因,可能不太方便,也不想带来任何麻烦,尽管可能没有,所以就不提供源文件了。由于没有源文件,提供代码感觉用处也不大,无法运行(看图的代码和输出分析可能更好)。如果浪费了大家时间,本人在这深深表示抱歉。

        最后,记得关闭文件。如果是一个几个,问题不大,如果是几十个上百个,那要在每一个文件处理完后都要关闭,不然占用太多内存,影响运行效率。关闭文件代码如下:

file.close()

猜你喜欢

转载自blog.csdn.net/m0_71559726/article/details/130271115