Python的MIME类型模块不是特别准确,它的结果基于文件扩展名。我能想到的唯一的办法,以获得更准确的结果是subprocess.Popen
调用的Unix file
命令像这样:在Python中更好,更准确的MIME类型检测
import subprocess
mimetype = subprocess.Popen(['file', '/path/to/file', '--mime-type', '-b'],
stdout=subprocess.PIPE).stdout.read().strip()
这种感觉不雅。有没有更好的方法来做到这一点没有不得不打电话file
但仍然达到相同的准确度?
这使用与'file'相同的MIME标识码。 – 2012-04-21 22:09:38
确实 - 但它更优雅,这是他所要求的。 :) – Mads 2012-04-21 22:13:01