它能够判断指定文件夹及其子孙文件夹内文件的类型,包括自定义文件类型,并将判断结果输出到控制台及“判断结果.txt”文件中。若输入路径为单个文件,也可对其进行类型判断。
用户使用该工具时,程序首先会打印作者相关信息,包括定制小工具的微信联系方式、定制价格,同时说明该工具仅支持64位Windows系统,以及操作过程中回车键的使用方法和一些特殊文件类型判断的注意事项。之后,用户按以下步骤操作:
- 输入文件夹总路径:在“请输入包含有需要判断真实文件后缀的文件夹总路径(支持子孙文件夹下文件操作): ”的提示后,用户需准确输入要进行文件类型判断的文件夹路径。若输入的是单个文件路径,程序也能对该文件进行类型判断。
输入完成后,程序开始执行操作:
- 加载自定义文件类型:如果输入路径是文件夹,程序会在当前目录下的“my_file_type”文件夹中查找自定义文件类型配置文件。每个配置文件中的每一行应包含文件扩展名和对应的MIME类型,以逗号分隔,且行首不能以“#”开头。程序读取这些配置文件,将自定义文件类型加载到
custom_filetypes
字典中。 - 判断文件类型:对于每个文件,程序首先使用
filetype.guess
函数尝试猜测文件类型。如果猜测失败:- 程序检查文件扩展名是否在自定义文件类型字典中。若存在,则输出自定义文件类型相关信息。
- 若不在自定义类型中,程序尝试判断文件是否为文本文件。如果是文本文件,输出其为纯文本文件相关信息。
- 若既不是自定义类型也不是文本文件,程序根据文件内容是否包含空字符判断是否为二进制文件,并输出相应信息。
- 如果
filetype.guess
函数猜测成功,程序输出文件扩展名、MIME类型,并根据不同的扩展名给出一些关于文件实际类型的提示信息,因为某些文件类型仅通过头信息无法完全准确区分。 - 处理文件夹:如果输入路径是文件夹,程序通过
os.walk
函数遍历该文件夹及其子孙文件夹,对每个文件都执行上述文件类型判断操作,并将所有文件的判断结果汇总。 - 输出结果:程序将文件类型判断结果输出到控制台,并写入到当前目录下的“判断结果.txt”文件中,同时提示用户“判断结果已写入到判断结果.txt文件中”。
完成一次操作后,程序会询问“是否要继续运行程序?(y/n): ”。若用户输入“y”(不区分大小写),则会重新提示用户输入文件夹总路径,开始新一轮的文件类型判断操作;若输入其他内容,程序结束运行。
例如,假设存在如下文件夹结构:
主文件夹
│
├── 文件夹 A
│ ├── file1.txt
│ ├── subfolder1
│ │ ├── file2.jpg
│ │ └── subfolder2
│ │ ├── file3.xlsx
│ │ └── subsubfolder1
│ │ ├── file4.bin
│ └── file5.custom
└── 文件夹 B
同时在“my_file_type”文件夹中有一个配置文件,内容为“custom,application/x-custom”,用于定义“custom”扩展名的自定义文件类型。
用户运行程序,输入“主文件夹”作为文件夹总路径。程序会遍历“主文件夹”及其子孙文件夹,判断“file1.txt”为纯文本文件,“file2.jpg”为图片文件并给出相应MIME类型及提示,“file3.xlsx”判断为可能是Office文档或压缩包并给出相应提示,“file4.bin”判断为二进制文件,“file5.custom”根据自定义配置判断为自定义类型“application/x-custom”。所有判断结果会输出到控制台和“判断结果.txt”文件中。之后询问用户是否继续运行程序,若选择“y”,可重新输入路径进行新一轮操作;若选择其他内容,程序结束。
python版本:3.86
是否带UI界面:非UI版本
电脑系统版本:win10 64位 专业版系统(这是测试环境,其他环境也可以32位操作系统可能需要调整代码,让AI去转换即可)
脚本使用到的库:使用pycharm编辑器,如果没有安装相关库,会自动标红提示,鼠标放到标红的地方会弹出安装库按钮
重要提示:这是源代码,需要安装python使用,也可以自行修改部分代码实现想要的功能
查看源代码
- 随机文章
- 热门文章
- 721-将指定文件夹A内各一级文件夹里的指定类型文件移动到各一级文件夹里的空文件夹内
- 734-持续监测A文件夹并将所有变动内容同步到B文件夹
- 763-批量删除整理多层文件夹冗余
- 766-移动带有关键字文件到指定文件夹
- 782-批量移动指定文件夹A下所有文件到A文件夹根目录下
- 20250104-批量删除pdf中指定区域内容【定制版】
- 20250108-批量将指定文件夹A下每个文件夹下文件平均随机分配到目标文件夹下各一级文件夹内
- 103-m3u8文件链接解析下载-合并ts及视频流片段视频及视频流音频流相同的视频
- 110-批量使用视频第几秒的第一帧设置视频封面
- 10046-3-批量为视频添加从左到右图片移动水印前后3秒无水印
- 1开通VIP会员享全站内容免费查看
- 2🔥🔥🔥常见问题 | 售后问题 | 程序购买 | 会员开通等问题
- 3752-批量复制文件及文件夹到多个文件夹
- 410081-1-批量解压自解压文件-【支持密码-子文件穿透】【不支持嵌套自解压或压缩包解压】-除自解压文件外不能有其他exe文件
- 5790-批量统计各文件夹下文件类型数量及文件夹路径输出到excell
- 6网页插入bilibili哔哩哔哩视频
- 7401-批量识别pdf中二维码并替换为指定图片或覆盖白色
- 8使用本站程序过程如果遇到问题请查看该文章说明
- 9431-批量合并指定文件夹下各文件夹内pdf为一个pdf文件
- 10【起步式】从python环境配置到使用AI写出第一个python程序(python版本3.86)
还没有评论,来说两句吧...