代码功能概述
该代码实现了一个用于批量处理PDF文件的图形化界面(GUI)应用程序,主要功能是删除PDF文件中指定的文本内容。它支持处理指定文件夹及其所有子文件夹中的PDF文件,并将处理后的文件保存在每个子文件夹内自动创建的 processed_files 文件夹中。
用户操作步骤
- 准备文本文件:在程序运行目录下创建一个名为
text_list.txt的文本文件,每行写入要删除的文本内容。 - 选择文件夹:点击 “选择文件夹” 按钮,选择包含PDF文件的文件夹。
- 开始处理:点击 “开始程序” 按钮,程序开始处理所选文件夹及其子文件夹中的所有PDF文件。
- 查看日志:处理过程中的信息会显示在日志框中,包括正在处理的文件路径和处理结果。如果处理过程中出现错误,错误信息会记录在
error_log.txt文件中,并显示在日志框中。 - 停止处理:如果需要中途停止处理,可以点击 “结束任务” 按钮。
- 清空输入和日志:可以点击 “清空输入框” 按钮清空文件夹路径输入框,点击 “清空日志” 按钮清空日志框内容。
实例验证
假设我们有以下文件夹结构:
project/
│
├── text_list.txt
│
├── pdf_folder/
│ │
│ ├── subfolder1/
│ │ ├── file1.pdf
│ │ └── file2.pdf
│ │
│ ├── subfolder2/
│ │ ├── file3.pdf
│ │ └── file4.pdf
│ │
│ ├── file5.pdf
│ └── file6.pdf
│
└── error_log.txt
- 在
text_list.txt中写入要删除的文本,例如:要删除的文本1要删除的文本2
- 运行程序,点击 “选择文件夹” 按钮并选择
pdf_folder。 - 点击 “开始程序” 按钮,程序会遍历
pdf_folder及其子文件夹subfolder1和subfolder2中的所有PDF文件。对于每个PDF文件,程序会删除text_list.txt中指定的文本内容,并将处理后的文件保存在对应的processed_files文件夹中。例如:
project/
│
├── text_list.txt
│
├── pdf_folder/
│ │
│ ├── subfolder1/
│ │ ├── file1.pdf
│ │ ├── file2.pdf
│ │ └── processed_files/
│ │ ├── file1.pdf
│ │ └── file2.pdf
│ │
│ ├── subfolder2/
│ │ ├── file3.pdf
│ │ ├── file4.pdf
│ │ └── processed_files/
│ │ ├── file3.pdf
│ │ └── file4.pdf
│ │
│ ├── file5.pdf
│ ├── file6.pdf
│ └── processed_files/
│ ├── file5.pdf
│ └── file6.pdf
│
└── error_log.txt
- 日志框会显示处理过程的信息,如:
开始处理文件夹: pdf_folder正在处理文件: pdf_folder/subfolder1/file1.pdf处理后的PDF已保存至: pdf_folder/subfolder1/processed_files/file1.pdf正在处理文件: pdf_folder/subfolder1/file2.pdf处理后的PDF已保存至: pdf_folder/subfolder1/processed_files/file2.pdf...所有PDF文件处理完毕。
- 如果某个文件处理出错,例如
file3.pdf因为权限问题无法处理,日志框会显示错误信息,并且error_log.txt文件中会记录:无法处理文件: pdf_folder/subfolder2/file3.pdf 错误: PermissionError: [Errno 13] Permission denied: 'pdf_folder/subfolder2/file3.pdf'
对子文件夹的支持
该程序支持穿透子文件夹,会递归处理指定文件夹及其所有层级的子文件夹中的PDF文件。无论是直接位于指定文件夹下的PDF文件,还是位于其任意深度子文件夹中的PDF文件,都会被处理。
python版本:3.86
是否带UI界面:UI版本
电脑系统版本:win10 64位 专业版系统(这是测试环境,其他环境也可以32位操作系统可能需要调整代码,让AI去转换即可)
脚本使用到的库:使用pycharm编辑器,如果没有安装相关库,会自动标红提示,鼠标放到标红的地方会弹出安装库按钮
重要提示:这是源代码,需要安装python使用,也可以自行修改部分代码实现想要的功能
查看源代码
- 随机文章
- 热门文章
- 热评文章
- 1721-将指定文件夹A内各一级文件夹里的指定类型文件移动到各一级文件夹里的空文件夹内
- 2734-持续监测A文件夹并将所有变动内容同步到B文件夹
- 3765-批量删除指定文件夹下文件和文件夹名中指定的字符或符号
- 4775-批量移动指定文件夹下指定格式文件到目标文件夹
- 5786-批量移动指定文件夹下文件到目标文件夹下同名文件夹内
- 6787-批量判断指定文件夹下文件的真实文件类型并修改
- 7453-批量删除pdf中包含二维码的注释-(只处理注释)
- 8454-批量检测损坏pdf文件并移动到目标文件夹内
- 9批量将pdf转为tiff格式-默认分辨率300-默认每页大小1.1
- 10110-批量使用视频第几秒的第一帧设置视频封面





还没有评论,来说两句吧...