使用Python访问GNOME配置信息

6 投票
1 回答
2392 浏览
提问于 2025-04-15 17:56

有没有一种标准的方法可以用Python来访问Gnome的配置文件信息(也就是~/.gconf)呢?

更新: 请提供一个简单的例子。

1 个回答

10

Python GConf,另外可以查看你所用系统的包管理器里是否有python-gconf和/或gnome-python-gconf这些包:

/usr/share/doc/python-gconf/examples/

或者可以浏览svn,在这个链接找到示例:http://svn.gnome.org/viewvc/gnome-python/trunk/examples/gconf/

在Fedora12(我用的系统)中,它叫做gnome-python2-gconf-2.28.0-1.fc12.x86_64.rpm,但也可能在一个通用的gnome-python2包里。

下面是一个用Python编辑GConf键(比如更改桌面背景)的示例:

#! /usr/bin/python

import gtk
import gtk.glade
import gconf

class GConfExample:
    def __init__(self):
        self.client = gconf.client_get_default()

    def get_key(self, key):
        return client.get_string(key)

    def set_key(self, key, val):
        client.set_string(key, str(val))

我找到了一些资料在http://therning.org/magnus/archives/57,我把GTK的部分删掉了。当然,这里可以很好地展示getitemsetitem的用法,比如:

mygconf['/path/to/key'];

还有一些关于使用API的好信息在这里。当然,我的例子不太好,但能说明这个API的简单性。这里还有更多的方法:

foo = self.gconf_client.get_string("/path/to/my/config/data/foo")
bar = self.gconf_client.get_int("/path/to/my/config/data/bar")
baz = self.gconf_client.get_bool("/path/to/my/config/data/baz")

而且每个get_*通常都有对应的设置方法set_*

撰写回答