Создал файл с именем "keys.py", где у меня есть четыре переменные, которые хранят строки секретных ключей доступа - PullRequest
0 голосов
/ 10 апреля 2019

Когда я импортировал «ключи», PyCharm говорит, что переменные являются неразрешенной ссылкой?Код Keys.py:

consumer_key = 'rXXXXXXXXXXXXXXXX'
consumer_secret ='6XXXXXXXXXXXXXXXXX'
access_token = 'XXXXXXXXXXXXXXXXX'
access_secret = 'XXXXXXXXX'

Код основного сценария:

 import tweepy
 import keys

OAuth с использованием предоставленных ключей и токенов

auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_secret)

Создание интерфейса с аутентификацией

api = tweepy.API(auth)

keyphrase = 'Testing'
for keyphrase in api.mentions_timeline():
    api.update_status('@{} Testing 
successful!'.format(keyphrase.user.screen_name))

OAuth, использующий предоставленные ключи и токены, продолжает давать мне ошибку «неразрешенная ссылка».Я уже импортировал файл keys.py правильно, поэтому я не понимаю, зачем он это делает.

Ответы [ 2 ]

0 голосов
/ 10 апреля 2019

Вместо import keys вы должны поставить from keys import consumer_key, consumer_secret, access_token, access_secret.

Вы также можете поставить from keys import *, или, как упоминалось в другом постере, вы можете получить к ним доступ, оставив свой импорт как есть и написав keys.VARIABLE_NAME.

0 голосов
/ 10 апреля 2019

Вам необходимо включить имя модуля при обращении к именам, определенным в другом модуле:

import keys
...
auth = tweepy.OAuthHandler(keys.consumer_key, keys.consumer_secret)
                           ^^^^^              ^^^^^

В качестве альтернативы, вы можете импортировать имена непосредственно в пространство имен текущего модуля, но я бы не рекомендовал это делать.

...