代码功能概述
这段Python代码实现了一个图形化界面(GUI)应用程序,用于批量删除PDF文件中的指定页面。用户可以选择包含PDF文件的文件夹,并通过不同的选项指定要删除的页面,程序会在输入文件夹下创建一个processed_file文件夹,并将处理后的PDF文件保存在与原文件相同的子文件夹结构中。同时,程序会记录操作日志,显示成功或失败的信息。
用户操作步骤
- 选择输入文件夹:点击“选择文件夹”按钮,选择包含PDF文件的文件夹路径,路径会显示在输入框中。
- 选择删除页面的方式:
- 指定页面:选择“指定页面,多个页面使用空格隔开”,在对应的输入框中输入要删除的页面编号(用空格分隔)。
- 删除前几页:选择“删除前几页”,在对应的输入框中输入要删除的前几页的数量。
- 删除最后几页:选择“删除最后几页”,在对应的输入框中输入要删除的最后几页的数量。
- 运行程序:点击“运行程序”按钮,程序开始处理PDF文件,删除指定页面,并在日志框中显示操作结果。
- 清空日志:点击“清空日志”按钮,可以清空日志框中的内容。
对子文件夹的处理
- 代码使用
os.walk函数遍历输入文件夹及其所有子文件夹。在遍历过程中,会跳过名为processed_file的文件夹。对于每个PDF文件,程序会根据其在输入文件夹中的相对路径,在processed_file文件夹下创建相同的子文件夹结构,并将处理后的PDF文件保存到相应位置。所以,该代码对输入文件夹及其所有子文件夹内的PDF文件均有效,能够穿透子文件夹进行处理。
实例验证
假设我们有以下文件夹及文件结构:
input_folder/
│
├── file1.pdf
├── file2.pdf
├── subfolder1/
│ ├── subfile1.pdf
│ └── subfile2.pdf
└── subfolder2/
├── subsubfolder/
│ └── subsubfile.pdf
└── subfile3.pdf
- 用户操作:
- 选择
input_folder作为输入文件夹。 - 选择“删除前2页”选项,并在输入框中输入
2。 - 点击“运行程序”按钮。
- 选择
- 预期结果:
- 程序会在
input_folder下创建processed_file文件夹。 - 在
processed_file文件夹下,会创建与input_folder相同的子文件夹结构。 - 所有PDF文件(
file1.pdf、file2.pdf、subfile1.pdf、subfile2.pdf、subsubfile.pdf、subfile3.pdf)的前2页会被删除,并保存在对应的新路径下,例如:
- 程序会在
input_folder/
│
├── processed_file/
│ ├── file1.pdf(已删除前2页)
│ ├── file2.pdf(已删除前2页)
│ ├── subfolder1/
│ │ ├── subfile1.pdf(已删除前2页)
│ │ └── subfile2.pdf(已删除前2页)
│ └── subfolder2/
│ ├── subsubfolder/
│ │ └── subsubfile.pdf(已删除前2页)
│ └── subfile3.pdf(已删除前2页)
├── file1.pdf
├── file2.pdf
├── subfolder1/
│ ├── subfile1.pdf
│ └── subfile2.pdf
└── subfolder2/
├── subsubfolder/
│ └── subsubfile.pdf
└── subfile3.pdf
日志框中会显示每个文件的处理结果,如“删除成功:[文件路径]”或“删除失败:[文件路径] 错误信息:[具体错误]”,最后显示“转换完成!”。
python版本:3.86
是否带UI界面:UI版本
电脑系统版本:win10 64位 专业版系统(这是测试环境,其他环境也可以32位操作系统可能需要调整代码,让AI去转换即可)
脚本使用到的库:使用pycharm编辑器,如果没有安装相关库,会自动标红提示,鼠标放到标红的地方会弹出安装库按钮
重要提示:这是源代码,需要安装python使用,也可以自行修改部分代码实现想要的功能
查看源代码
- 随机文章
- 热门文章
- 热评文章
- 1707-批量查找括号中同名文件并创建文件夹将这些文件移入文件夹名为括号中内容
- 2782-批量移动指定文件夹A下所有文件到A文件夹根目录下
- 310080-2-监测指定文件夹-对zip-rar-7z所有压缩包创建同名文件夹移入并解压-支持子孙文件夹下压缩包解压-支持多层嵌套压缩包的解压-支持密码库解压
- 410081-2-批量解压自解压文件-批量解压到自解压文件所在文件夹内-不支持密码-除自解压文件外不能有其他exe文件
- 510084-批量解压7z分卷-【支持带密码的分卷-子文件夹穿透】【不支持多层嵌套分卷】
- 6103-m3u8文件链接解析下载-合并ts及视频流片段视频及视频流音频流相同的视频
- 7110-批量使用视频第几秒的第一帧设置视频封面
- 8111-实现批量将MP4等视频文件批量转码成MP3文件并保存到原文件夹下
- 910046-2-批量为视频左上角添加图片水印可设置水印透明度
- 10100101-批量将指定文件夹下视频时长快进或慢放到指定时长




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