用Python读取 PDF中表格内容并重命名

工作中需要处理一些pdf文件,把一个大的pdf按页分割成一份一份的,每个文件格式相同,提取其中的某个字段来重命名,手动去搞工作量太大了,动辄几百份,去网上找个软件,因为需求比较小众,所以只有一个软件,试用一下可以满足,但很快到期了,没办法,自己搞个脚本来用用。

大概只懂一点PHP和Python,但是PHP没办法读取pdf内容并提取,所以还是用Python来搞定,需要安装好Python以及以下环境和依赖:

1.java

2.tabula

3.pandas 和 numpy

java下载安装,一样配置好jdk环境,添加好系统path,然后打开终端,安装模块和依赖

pip install tabula-py

pip install pandas

装好之后就可以开始Python编码了,代码比较简单,完整代码如下:

import tabula
import re
import os

if __name__=="__main__":
    folder = "rename"
    os.chdir(folder)
    pdflist = os.listdir()
    print(pdflist)
    for item in pdflist:
        if item[-4:] in [".pdf",".PDF"] :
            df = tabula.read_pdf(item,encoding='utf-8', pages='1')
            new_name = df[0].iloc[0,1]
            if new_name:
                os.rename(item,f"{new_name}.pdf")
                print(item + " 已重命名为 " + f"{new_name}.pdf")
    print("重命名完成!")

大概就是读取pdf,提取特定行列的内容,然后用得到的内容重命名文件,循环特定路径下的所有文件,保存成py脚本以后随时调用,收工。

代码 2021-11-20 17:19:18 通过 网页 浏览(2157)

共有0条评论!

发表评论