Я уже давно сталкиваюсь с проблемой. Я использовал tweepy для конкретного стороннего проекта c. В неструктурированном фрагменте кода я выполнял
- проверки подлинности
- создал объект API
- с использованием API для поиска временных шкал пользователя, информация пользователя ex c.
Весь процесс работает идеально, если я напишу их, например:
auth = tweepy.OAuthHandler(
keys["consumer_key"], keys["consumer_secret"])
auth.set_access_token(
keys["access_token"], keys["access_token_secret"])
api = tweepy.API(auth)
user_object = api.get_user(id="user_id")
Выше приведен фрагмент кода c, который просто получает идентификатор твиттера с экрана пользователя. имя. Но для каждого запроса, который я отправлял в твиттер, мне приходилось повторно аутентифицировать и инициализировать объект API. Поэтому я решил сделать эту аутентификацию забавной c, и эта функция должна возвращать объект API.
def authenticate():
"""
Authenticate
:returns the api object
"""
global API_AUTH
if API_AUTH:
api = API_AUTH
else:
keys = load_credentials()
# Authenticate tweepy
auth = tweepy.OAuthHandler(
keys["consumer_key"], keys["consumer_secret"])
auth.set_access_token(
keys["access_token"], keys["access_token_secret"])
api = tweepy.API(auth)
API_AUTH = api
return api
И чтобы получить идентификатор пользователя, теперь я просто вызываю функцию аутентификации, такую как:
api = authentications.authenticate()
user_object = api.get_user(id=user_name)
И та-даа! Это дает мне эти глупые предупреждения каждый раз, когда я вызываю метод, определенный на объекте API, и это очень расстраивает. Жесткий код возвращает то, что я ожидал, и работает нормально. Я ненавижу предупреждения, пожалуйста, помогите мне. Что не так: (
предупреждения:
![enter image description here](https://i.stack.imgur.com/CH3cZ.png)