使用 python 验证文件扩展名 [重复]
Posted
技术标签:
【中文标题】使用 python 验证文件扩展名 [重复]【英文标题】:File extension validation with python [duplicate] 【发布时间】:2013-09-03 16:28:06 【问题描述】:我想检查给定文件的扩展名是否正确。例如,有人给我一个扩展名为 .zip 的文件,但实际上它可能是一个可执行文件。
使用mimetypes
我无法确定文件的真实类型。据我所知,mimetypes
需要扩展。
我可以用一些扩展来映射 unix file
命令的输出。即使更改扩展名,也无法欺骗file
命令。但是,此解决方案需要一个子流程。
我想,这个问题可能有一个更 Pythonic 的解决方案。有人知道吗?
【问题讨论】:
@JesseJ 这对我来说没问题。它可以作为文本文件处理。我想分开存档、可执行文件、库等。 【参考方案1】:搜索用于file
命令的C 库名称(libmagic
),网络3 interesting python packages on PyPI:
【讨论】:
【参考方案2】:归根结底,没有绝对的了解方式。有几个原因:
一些文件格式使用简单的标识符,而另一些则不使用。 对于那些不这样做的人,唯一的方法是分析能够支持该格式的程序的行为。如果程序可以成功打开文件,那么它就属于它。 但如果不是,该文件可能属于数百种您没有程序可以打开的格式。恐怕您需要满足于部分答案,就像您已有的答案一样。
【讨论】:
以上是关于使用 python 验证文件扩展名 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
使用 javascript/jquery 验证文件上传 [重复]