我正在编写python脚本,我想查找有关文件的信息,例如mime-type(或文件包含的任何有用描述)。
我听说过python-magic,但我真的在寻找 解决方案,它可以让我找到这些信息,而不需要安装额外的软件包。
我是坚持维护文件扩展名列表,还是python在标准库中有什么东西?我无法在文档中找到它。
答案 0 :(得分:5)
我不确定您是否要从文件内容推断某些内容,但如果您想从文件扩展名中了解mime类型mimetypes模块就足够了
>>> import mimetypes
>>> mimetypes.init()
>>> mimetypes.knownfiles
['/etc/mime.types', '/etc/httpd/mime.types', ... ]
>>> mimetypes.suffix_map['.tgz']
'.tar.gz'
>>> mimetypes.encodings_map['.gz']
'gzip'
>>> mimetypes.types_map['.tgz']
'application/x-tar-gz'
答案 1 :(得分:1)
标准库支持mapping filenames to mimetypes。
除了mimetype之外,您的问题也听起来像您对其他信息感兴趣。 stat模块还将为您提供有关大小,所有者,上次修改时间等信息,但最常见的文件系统(Windows NTFS / FAT,Linux Ext 2/3,Mac OS X)不存储任何文件系统元数据或有关文件的“其他信息”。这就是我们需要使用扩展来查找mimetype的原因。