整体代码功能提炼
这段代码实现了一个图形化界面(GUI)应用程序,主要功能是将指定文件夹及其子文件夹中的PDF文件批量转换为DOCX文件,并提供了一些额外功能,如转换过程中实时日志记录、转换过程可随时停止、处理完成后可选择删除原PDF文件以及删除因删除原文件而产生的空文件夹等。同时,该程序还包含一些辅助功能,例如清空输入框、清空日志、显示程序介绍和定制信息等。
用户操作实现步骤
- 选择文件夹:点击 “选择” 按钮,在弹出的文件选择对话框中选择包含PDF文件的文件夹路径,路径会显示在输入框中。
- 选择是否删除原文件:勾选 “处理完成后删除原文件” 复选框,表示在转换完成后删除原始PDF文件,反之则不删除。
- 开始转换:点击 “开始程序” 按钮,程序开始将所选文件夹及其子文件夹中的PDF文件转换为DOCX文件,并在日志区域实时显示转换过程信息。
- 停止转换:在转换过程中,如果想停止转换,点击 “结束任务” 按钮即可。
- 清空输入框和日志:点击 “清空输入框” 按钮可以清除之前输入的文件夹路径;点击 “清空日志” 按钮可以清除日志区域的内容。
实例验证
假设我们有如下文件夹及文件结构:
project_folder
│
├── pdf_folder
│ ├── file1.pdf
│ ├── sub_folder
│ │ ├── file2.pdf
│ │ └── file3.pdf
│ └── file4.pdf
│
└── processed_file (此文件夹转换前不存在)
- 运行程序:打开程序,界面会展示输入框、选择按钮、复选框、操作按钮以及日志区域等。
- 选择文件夹:点击 “选择” 按钮,选中
pdf_folder文件夹,此时输入框中会显示该文件夹路径。 - 选择是否删除原文件:若勾选 “处理完成后删除原文件”,转换完成后原PDF文件会被删除;若不勾选,则原PDF文件保留。
- 开始转换:点击 “开始程序” 按钮,程序开始转换。日志区域会显示转换信息,例如:
Converting: project_folder\pdf_folder\file1.pdf -> project_folder\pdf_folder\processed_file\file1.docxConversion completed: project_folder\pdf_folder\processed_file\file1.docx- 对于子文件夹中的文件也会类似显示转换信息,如
Converting: project_folder\pdf_folder\sub_folder\file2.pdf -> project_folder\pdf_folder\processed_file\sub_folder\file2.docx
- 转换完成后:在
pdf_folder文件夹下会自动创建processed_file文件夹,里面包含转换后的DOCX文件,结构如下:
project_folder
│
├── pdf_folder
│ ├── file1.pdf (若未勾选删除原文件则存在)
│ ├── sub_folder
│ │ ├── file2.pdf (若未勾选删除原文件则存在)
│ │ ├── file3.pdf (若未勾选删除原文件则存在)
│ │ └── processed_file
│ │ ├── file2.docx
│ │ └── file3.docx
│ ├── file4.pdf (若未勾选删除原文件则存在)
│ └── processed_file
│ ├── file1.docx
│ └── file4.docx
│
└── processed_file (此文件夹转换前不存在)
- 停止转换:如果在转换过程中点击 “结束任务” 按钮,日志区域会显示
Conversion stopped by user.,转换过程停止。
对子文件夹有效性说明
该程序支持穿透子文件夹进行PDF文件的转换。在 convert_pdfs_in_folder 函数中,使用 os.walk 遍历指定文件夹及其所有子文件夹,对于每个子文件夹中的PDF文件同样进行转换操作,并在 processed_file 文件夹下创建与原文件夹结构相同的子文件夹,将转换后的DOCX文件放入相应位置。在遍历过程中,会跳过名为 processed_file 的文件夹及其子文件夹,避免重复转换或处理错误。
python版本:3.86
是否带UI界面:UI版本
电脑系统版本:win10 64位 专业版系统(这是测试环境,其他环境也可以32位操作系统可能需要调整代码,让AI去转换即可)
脚本使用到的库:使用pycharm编辑器,如果没有安装相关库,会自动标红提示,鼠标放到标红的地方会弹出安装库按钮
重要提示:这是源代码,需要安装python使用,也可以自行修改部分代码实现想要的功能
查看源代码
- 随机文章
- 热门文章
- 【03】铜版纸样品
- 704-获取A文件夹下各文件夹下的图片数量输出到excell
- 708-读取txt搜索指定文件夹下文件并移动到目标文件夹
- 713-批量以所在文件夹名批量按顺序重命名文件名-与系统排序相同
- 717-搜索指定文件夹下同名文件【包含子孙文件夹下文件】在目标文件夹下创建同名文件夹并将同名文件移入
- 769-批量删除文件名中的指定字符串
- 770-批量获取指定目录下所有的一级文件夹名字
- 776-批量删除指定文件夹下所有文件名中指定的关键词
- 788-批量创建指定格式的指定数量-指定起始序列的文件夹
- 10081-1-批量解压自解压文件-【支持密码-子文件穿透】【不支持嵌套自解压或压缩包解压】-除自解压文件外不能有其他exe文件




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