相当于xdg mime查询文件类型的Python
我正在寻找一个python库,该库为给定文件提供与bash命令相当于xdg mime查询文件类型的Python,python,mime-types,xdgutils,Python,Mime Types,Xdgutils,我正在寻找一个python库,该库为给定文件提供与bash命令xdg mime query filetype完全相同的mime类型。目标是使用该函数查找目录中具有特定mime类型的所有文件(application/mbox) 我知道xdg库,但它没有一个函数返回与xdgmime命令相同的值 您可以提供自己到python mimetypes模块的映射,这样您就可以对所有需要的扩展名调用xdg mime,然后创建一个文件,将其馈送到mimetypes,如下所示: import mimetypes m
xdg mime query filetype
完全相同的mime类型。目标是使用该函数查找目录中具有特定mime类型的所有文件(application/mbox
)
我知道
xdg
库,但它没有一个函数返回与xdgmime
命令相同的值 您可以提供自己到python mimetypes模块的映射,这样您就可以对所有需要的扩展名调用xdg mime,然后创建一个文件,将其馈送到mimetypes,如下所示:
import mimetypes
mimetypes.init()
extra={".123": "application/vnd.lotus-1-2-3"}
[mimetypes.add_type(value, key) for key, value in extra.items()]
# testing
mimetypes.guess_type("x.123")
给出了“application/vnd.lotus-1-2-3”您可以提供自己到python mimetypes模块的映射,这样您就可以对所有需要的扩展名调用xdg mime,然后创建一个文件,将其馈送到mimetypes,如下所示:
import mimetypes
mimetypes.init()
extra={".123": "application/vnd.lotus-1-2-3"}
[mimetypes.add_type(value, key) for key, value in extra.items()]
# testing
mimetypes.guess_type("x.123")
给出了“application/vnd.lotus-1-2-3”
xdg mime
不依赖于文件扩展名,因此这不起作用。在我的例子中,这些文件甚至没有扩展名,还有一个python绑定到libmagic,我想这是绕过文件扩展名时最直接的选择。libmagic只说ASCII文本,使用CRLF,LF行终止符
xdgmime
不依赖文件扩展名,所以这不起作用。在我的例子中,这些文件甚至没有扩展名,还有一个python绑定到libmagic,我想这是绕过文件扩展名时最直接的选择。libmagic只说ASCII文本,带有CRLF,LF行终止符
Yes,我以前确实使用过这种解决方法。您的解决方案不是与xdg mime等效的python,而是从python内部运行bash命令。您的解决方案不是与xdg mime等效的python,而是从python内部运行bash命令。