Ich versuche, eine Verbindung mit dem Twitter-Stream-API herzustellen, um Tweets in Echtzeit zu holen. Dieser Codeabschnitt funktionierte bis vor 5-6. Plötzlich habe ich die ganze Zeit 401 bekommen. Seltsamerweise geschieht dies sowohl auf meinem lokalen Computer als auch auf unserem Produktionsserver, der sich in der Cloud befindet. Daher denke ich, dass dies kein Problem im Zusammenhang mit dem Netzwerk ist. HierTweepy-Streaming gibt 401 Autorisierung erforderlich
ist der Code:
l = StdOutListener()
auth = OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
auth.callback = 'https://localhost' #no effect commented/uncommented
stream = Stream(auth, l)
stream.filter(track=['twitter'], languages=["es"])
Bisher habe ich versucht, die folgenden:
- Gewinnung neuer Consumer-Key, Consumer-Secret, Zugriffstoken und Zugriffstoken Geheimnis. Ich habe 4 verschiedene Tasten verwendet, die vorher funktionierten.
- Erstellt eine neue App von apps.twitter.com. Die Callback-URL wurde gefüllt, da einige Benutzer gemeldet haben, dass 401 "Autorisierung erforderlich" mit dem Feld für die Rückruf-URL in Verbindung steht, das auf der Anwendungsseite von Twitter fehlt.
- Synchronisiert meine Uhr mit einem NTP-Server, sowohl auf meinem lokalen und auf Produktionsserver. Meine Uhr ist nicht ausgeschaltet.
- Meine Anwendung haben die richtigen Berechtigungen und ich erhielt Zugriffstoken und geheime nach der Konfiguration. Hier
ist die Anfrage:
'Content-Length': '22'
'Content-Type': 'application/x-www-form-urlencoded'
'Authorization': 'OAuth oauth_nonce="161484371946745487981492681844"
oauth_timestamp="1492681844"
oauth_version="1.0"
oauth_signature_method="HMAC-SHA1"
oauth_consumer_key="<oauth_consumer_key>"
oauth_token="<oauth_token>"
oauth_signature="tphQqFWaBvEo2byjZ%2BRqNAM30I0%3D"'
Method: 'POST'
URL: 'https://stream.twitter.com/1.1/statuses/filter.json?delimited=length'
Jede Hilfe würde geschätzt, warum ich erhalte eine 401 Unauthorized "Authorization Need" Antwort.
Edit: Ich habe auch Twython versucht und ich habe die gleiche Antwort von Twitter zurück.
Dank
Das gleiche gilt auch für Twython Oauth. Außerdem benötigen Sie Oauth2 nicht, um eine Verbindung zum Stream-Endpunkt herzustellen. –
Verwenden Sie eine veraltete Version von Tweepy? –