从XML文件读取Gtk3应用程序的配置设置
问题描述:
我正在尝试使用Gtk3和Python开发桌面应用程序。它基本上是一个Twitter客户端。我本打算将认证设置(访问令牌和访问令牌密钥)存储在XML文件中。现在我希望在应用程序发布时阅读它们。从XML文件读取Gtk3应用程序的配置设置
我遇到的问题是放置读取XML文件的代码的位置。
认证需要以下步骤:
auth = tweepy.OAuthHandler(cons_key,cons_secret)
auth.set_access_token(access_token,access_token_secret)
api = tweepy.API(auth)
我不能把读取的代码在主窗口的构造函数,该窗口打开时一样,为获得鸣叫方法被调用。我已将我的代码放在github上。
的XML文件如下:
<?xml version="1.0" ?>
<credentials>
<access_token>
76611638-TSnLa31lRXEp3qBNpxKmi2gyiW0jCLpOKeEsK5i6A
</access_token>
<access_token_secret>
wgC9xwGpCMOQQtDazOZF7wtvCA5MrtcaLT6gLv1vdE
</access_token_secret>
</credentials>
答
UPDATE:
尝试在你的程序开始读取XML(与lxm
)。 使用从xml读取的数据初始化您的api
。
MainWindow.__init__()
:
申报/创建self.myapi=api
使用self.myapi
在你的类方法(MainWindow
的方法)和api
在你的函数。
OLD:
你为什么不尝试移动:
auth=tweepy.OAuthHandler(cons_key,cons_secret)
auth.set_access_token(access_token,access_token_secret)
api=tweepy.API(auth)
到:
#Class of the main window
class MainWindow():
#Main Window constructor
def __init__(self):
message=['','','','','','','','','','']
users=['','','','','','','','','','']
image_url=['','','','','','','','','','']
#read xml here (with lxml)
#get credentials
#get auth
statuses=api.home_timeline()
loader=GdkPixbuf.PixbufLoader()
如果这不起作用,请让我知道。
我无法推送文件的阅读,因为我的推文和流的方法是在类之外,他们使用api对象。为了避免错误,我尝试在类之前初始化api对象,并将token值设置为null,然后使用从文件读取的实际值重新初始化api对象,但正因为如此,令牌过期。 – 2012-01-18 18:45:04
我已经更新了我上面的答案。 – aayoubi 2012-01-18 20:07:02
它不会工作,就好像没有访问令牌一样,会出现错误。无论如何,我设法形成与班级本身和现在工作的职能。只需拿到授权部分,当访问令牌不存在 – 2012-01-18 20:07:24