GOOGLE ADS

суббота, 7 мая 2022 г.

В потоке обнаружена ошибка HTTP: 403 Twitter API, но у меня повышенный доступ

Недавно я получил повышенный доступ к Twitter Developers. Я создал новый проект, и у меня включен OAuth 1.0a с разрешением на чтение и запись, но когда я запустил код, я получил:Stream encountered HTTP error: 403

import tweepy
from config import ACCESS_TOKEN as access_token
from config import ACCESS_TOKEN_SECRET as access_token_secret
from config import API_KEY as api_key
from config import API_KEY_SECRET as api_key_secret
auth = tweepy.OAuthHandler(api_key, api_key_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth)
class Linstener(tweepy.Stream):
tweets = []
limit = 1
def on_status(self, status):
self.tweets.append(status)
# print(status.user.screen_name + ": " + status.text)
if len(self.tweets) == self.limit:
self.disconnect()
stream_tweet = Linstener(api_key, api_key_secret, access_token, access_token_secret)
users = ['pawka322']
user_ids = []
for user in users:
user_ids.append(api.get_user(screen_name=user).id)
stream_tweet.filter(follow=user_ids)

Что я сделал:


  1. Создал новое приложение и сохранил потребительский ключ и потребительский секрет.

  2. Создал новый проект развития

  3. Включил OAuth 1.0a:


  • Установите разрешение приложения на чтение и запись

  • Заполненный пользователем «URI обратного вызова / URL-адрес перенаправления» и «URL-адрес веб-сайта» с примером организации Сгенерированный токен доступа и секретный токен доступа

  • Мои учетные данные работают нормально, если я получаю твиты с временной шкалы пользователей.


    Решение проблемы

    Если вы создали свое приложение 29 апреля 2022 г. или позже, вы не сможете получить доступ к потоковой передаче с помощью Twitter API версии 1.1:


    Кроме того, начиная с сегодняшнего дня, новые клиентские приложения не смогут получить доступ к статусам/образцу версии 1.1 и статусам/фильтру версии 1.1.


    https://twittercommunity.com/t/deprecation-announcement-removing-compliance-messages-from-statuses-filter-and-retiring-statuses-sample-from-the-twitter-api-v1-1/170500

    Вместо этого вам придется использовать Twitter API v2.
    Интерфейс Tweepy для потоковой передачи с помощью Twitter API v2 — это StreamingClient.

    Комментариев нет:

    Отправить комментарий

    Laravel Datatable addColumn returns ID of one record only

    Я пытаюсь использовать Yajra Datatable для интеграции DataTable на свой веб-сайт. Я смог отобразить таблицу, но столкнулся с проблемой. В по...