【问题标题】:Better, more accurate mime type detection in PythonPython 中更好、更准确的 MIME 类型检测
【发布时间】:2012-04-21 22:06:30
【问题描述】:

Python 的 mimetypes 模块不是特别准确,它的结果基于文件扩展名。我能想到的获得更准确结果的唯一方法是使用 subprocess.Popen 调用 Unix file 命令:

import subprocess
mimetype = subprocess.Popen(['file', '/path/to/file', '--mime-type', '-b'], 
    stdout=subprocess.PIPE).stdout.read().strip()

这感觉不优雅。有没有更好的方法可以做到这一点不必致电file,但仍能达到同样的准确度?

【问题讨论】:

    标签: python mime-types python-2.7


    【解决方案1】:

    你可以试试:magic's mimetype

    【讨论】:

    • 没错 - 但它更优雅,这是他所要求的。 :)
    【解决方案2】:

    我使用类似但稍微缩写的东西:

    import subprocess
    mimeType = subprocess.check_output(['file', '-ib', '/path/to/file']).strip()
    

    它可能不会更优雅,但它更短,更容易阅读,我总是喜欢这样。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-11-09
      • 2010-10-13
      • 2011-12-01
      • 2012-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-20
      相关资源
      最近更新 更多