Чтение настроек конфигурации из файла XML для приложения Gtk3 - PullRequest
0 голосов
/ 18 января 2012

Я пытаюсь разработать настольное приложение, используя Gtk3 и Python. Это в основном клиент Twitter. Я намеревался сохранить параметры аутентификации (токен доступа и секрет токена доступа) в файле XML. Теперь я хочу прочитать их при запуске приложения.

Проблема в том, где разместить код для чтения файла 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>

1 Ответ

0 голосов
/ 18 января 2012

ОБНОВЛЕНИЕ :

Попробуйте прочитать xml в начале вашей программы (с lxm).Инициализируйте ваш api с данными, считанными из xml.

в MainWindow.__init__():

Объявите / создайте self.myapi=api

Используйте self.myapi в ваших методах класса(MainWindow методы) и api в ваших функциях.

СТАРЫЙ :

Почему бы вам не попробовать переместить:

auth=tweepy.OAuthHandler(cons_key,cons_secret)
auth.set_access_token(access_token,access_token_secret)
api=tweepy.API(auth)

to:

#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()

Если это не сработает, пожалуйста, дайте мне знать.

...