Ich habe eine Anwendung, die eine Reihe von Funktionen der Twitter-API nutzt. Ich habe die Anwendung auf einem Windows 7-System getestet, und alle Funktionen funktionierten gut.401 Fehler bei der Verwendung der Streaming-Funktionen von Twitter API (über Tweepy)
Beim Testen der Anwendung auf einem zweiten Windows 7-System scheint alles außer den Funktionen Öffentlicher Stream und User Stream zu funktionieren (d. H. Die App konnte sich authentifizieren, kann Benutzern folgen/nicht folgen usw.). Auf diesem System erzeugen die Stream-Features 401 error. Wie ich es verstehe, könnte 401 einen Autorisierungsfehler anzeigen (der in diesem Fall nicht auftritt, da Nicht-Streaming-Funktionen verfügbar sind) oder a difference in time configuration zwischen den Servern von Twitter und dem Client-System.
Ich möchte, dass die Streaming-Funktionen meiner App plattformübergreifend verfügbar sind (Windows, Mac, Unix), und ich kann nicht erwarten, dass die Endbenutzer an den Uhrkonfigurationen ihres Systems herumbasteln. Kann jemand eine System-agnostische Tweepy/python-basierte Lösung für das 401-Fehlerproblem unter der Bedingung empfehlen, dass es durch ein Zeitkonfigurationsproblem verursacht wird? Vielen Dank.
EDIT:
auf dem System, auf das die Stream-Funktionen nicht in Betrieb waren, nachdem sie mit dem Systemtakt von Hand gebastelt zu haben, ohne Erfolg, ich mit time.windows.com synchronisiert. Dies hatte keine erkennbare Auswirkung auf die angezeigte Zeit (ich hatte keine Sicht auf die Sekunden), aber es löste das Problem (d. H. Die Twitter-Benutzer- und öffentlichen Stream-Funktionen wurden verfügbar). Die Frage bleibt - wie verhindert man, dass ein solcher Fehler auf den Systemen der Endbenutzer auftritt? Es ist unrealistisch, Benutzer zu warnen, ihre Uhren einzustellen.
Sind Sie sicher, dass es sich nicht um einen Authentifizierungsfehler handelt? Gehen Sie einfach von der API-Dokumentation [Streaming With Tweepy] (http://docs.tweepy.org/en/v3.4.0/streaming_how_to.html): 'API-Autorisierung ist erforderlich, um auf Twitter-Streams zuzugreifen. – davedwards
@downshift Wenn es Da es sich um einen Authentifizierungsfehler handelt, glaube ich nicht, dass ich alle Nicht-Streaming-Funktionen verwenden könnte, da die Streaming- und Nicht-Streaming-Funktionen dieselben Anmeldeinformationen verwenden. Außerdem würde es nicht erklären, warum das Programm auf einer Maschine und nicht auf einer anderen Maschine funktioniert. – Boa
Ich bin sicher, Sie haben Recht mit den Authentifizierungsanforderungen, Sie haben ein besseres Verständnis und Erfahrung als ich mit der API. Aber das Programm könnte auf einem System funktionieren, bei dem Umgebungsvariablen für die Anmeldeinformationen gesetzt sind und keines auf dem anderen Computer, weshalb ich gefragt habe, aber fairerweise, Sie haben mich korrigiert. – davedwards