代码功能概述
这段Python代码实现了一个图形化界面(GUI)的批量PDF拆分工具,具备以下功能:
- 选择文件夹:通过图形化界面选择包含PDF文件的文件夹路径。
- 拆分PDF:将所选文件夹及其子文件夹中的PDF文件拆分成单页PDF文件。
- 损坏文件处理:检查PDF文件是否有效,对于无效(损坏)的PDF文件,重命名并添加“_文件损坏”后缀。
- 原文件删除:提供选项,在处理完成后删除原PDF文件及空文件夹。
- 日志记录:在图形化界面的文本框中记录处理过程的日志,包括文件处理状态、拆分结果、错误信息等。
- 任务控制:支持启动和停止拆分任务,在任务进行中可以随时终止操作。
对子文件夹的处理
代码使用 os.walk 函数遍历指定的文件夹及其所有子文件夹,会穿透子文件夹处理其中的PDF文件。但是,在遍历过程中会跳过名为“processed_file”的文件夹及其子文件夹,以避免对已处理的文件进行重复操作。
用户操作步骤
- 运行程序:双击运行该Python脚本,弹出图形化界面。
- 选择文件夹:点击“选择文件夹”按钮,在弹出的文件选择对话框中选择包含PDF文件的文件夹路径,路径会显示在输入框中。
- 选择删除选项:勾选“处理后删除原文件和文件夹”复选框,可在处理完成后删除原PDF文件及空文件夹;不勾选则保留原文件。
- 开始处理:点击“开始程序”按钮,程序开始拆分PDF文件,并在日志框中显示处理过程。
- 终止任务:在处理过程中,如果需要终止任务,点击“结束任务”按钮。
- 清空输入和日志:点击“清空输入”按钮可清空文件夹路径输入框;点击“清空日志”按钮可清空日志记录。
实例验证
假设我们有以下文件夹结构:
parent_folder
│
├── sub_folder1
│ ├── file1.pdf
│ └── file2.pdf
├── sub_folder2
│ ├── file3.pdf
│ └── file4.pdf
└── file5.pdf
- 运行程序:启动程序后,弹出图形化界面。
- 选择文件夹:点击“选择文件夹”,选择
parent_folder。 - 开始处理:点击“开始程序”,程序开始遍历
parent_folder及其子文件夹sub_folder1和sub_folder2。- 对于有效的PDF文件,如
file1.pdf、file2.pdf、file3.pdf、file4.pdf和file5.pdf,会将其拆分成单页PDF文件,并存储在parent_folder/processed_file目录下对应的子文件夹中。例如,file1.pdf拆分后的单页PDF文件会存储在parent_folder/processed_file/sub_folder1/file1目录下。 - 对于无效(损坏)的PDF文件,假设
file3.pdf损坏,程序会将其重命名为file3_文件损坏.pdf,并在日志中记录相关信息。
- 对于有效的PDF文件,如
- 删除原文件(可选):如果勾选了“处理后删除原文件和文件夹”,处理完成后,原PDF文件及空文件夹(如
sub_folder1和sub_folder2在删除所有PDF文件后为空)会被删除。
通过上述操作和实例,可以清晰地理解该代码实现的功能及运行逻辑。
python版本:3.86
是否带UI界面:UI版本
电脑系统版本:win10 64位 专业版系统(这是测试环境,其他环境也可以32位操作系统可能需要调整代码,让AI去转换即可)
脚本使用到的库:使用pycharm编辑器,如果没有安装相关库,会自动标红提示,鼠标放到标红的地方会弹出安装库按钮
重要提示:这是源代码,需要安装python使用,也可以自行修改部分代码实现想要的功能
查看源代码
- 随机文章
- 热门文章
- 热评文章
- 1762-批量提取移动指定文件夹内所有文件包括子孙文件夹文件到指定文件夹
- 210080-0-监测指定文件夹对所有压缩包创建同名文件夹并解压-不支持子孙文件夹内压缩包-只支持zip-rar-7z压缩包的解压
- 3修复“你当前无权访问该文件夹”问题
- 4【下单入口】300克铜版纸名片印刷【工厂价】
- 510085-批量解压zip分卷文件-支持带密码-txt中一行一个密码-自动匹配-解压完成后删除分卷
- 6104-批量合并每个文件夹下所有视频为mp4文件(支持不同格式间的合并)
- 7100101-批量将指定文件夹下视频时长快进或慢放到指定时长
- 8100128-批量获取视频音频时长添加到文件名中支持子孙文件夹下操作
- 9100132-批量将视频格式转换为mp4文件支持子孙文件夹操作
- 10100133-批量将视频转换为gif





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