4

我正在用 Python 制作应用程序,我需要向用户提供“打开方式”菜单。目前我正在解析/usr/share/applications/mimeinfo.cashe~/.local/share/applications/mimeapps.list但结果很差。Nautilus 在“打开方式”菜单中有更多条目。

您知道获取与文件关联的应用程序列表的更好方法吗?

编辑:

gnomevfs使用模块有一种更简单的方法。

mime_type = gnomevfs.get_mime_type(filename)
application_list = gnomevfs.mime_get_all_applications(mime_type)

在返回的列表中,您可以获得应用程序名称、图标名称、配置文件和许多其他内容。

4

2 回答 2

4

我找到了一个更优雅的解决方案。在gnomevfs模块中有一个名为的函数mime_get_all_applications,它返回相关应用程序的正确列表。

更多信息可以在这里找到。

编辑:自从编写此答案以来,GnomeVFS 被标记为已弃用。app_info_get_allGIO 现在确实通过和之类的方法提供了此功能app_info_get_for_type

于 2011-03-22T19:33:00.730 回答
2

GNOME 将其应用程序列表存储在这两个文件中:

/etc/gnome/defaults.list
~/.local/share/applications/mimeapps.list

(链接到来源)

于 2011-03-22T17:46:14.190 回答