Twitter in Pipes einzubauen erschien mir unheimlich schwer, aber ich hatte es völlig überkompliziert. Mein Problem war der Startpunkt: https://developer.twitter.com/en/docs. Die offizielle Twitter-Dokumentation ist verwirrend. Es gibt für verschiedene Aufgaben verschiedene APIs, und als ich dort anfangs reinschaute gab es nochmal andere APIs, bei denen dann die Warnung der baldigen Abschaltung dranstand, die Alternative gab es noch nicht. Es erschien mir unmöglich, da etwas zukunftssicheres zu entwickeln.
Ich hätte mir direkt sferik/twitter anschauen sollen. Denn wie so viele gute gems abstrahiert er diese Entscheidungen völlig. Er verlangt nur nach den API-Keys und Tokens (warum auch immer Twitter beide Systeme hat) und funktioniert danach einfach als Code:
client.search("ruby")
sucht nach Tweets mit ruby,
client.user_timeline("onliandone")
zeigt Tweets aus der Timeline des angegebenen Nutzers. Rate-Limiting fehlt, aber dafür habe ich mit throttle-queue schon eine Weile eine saubere Lösung im Arsenal.
Sollte nun Twitter wirklich wieder die APIs ändern kann ich davon ausgehen, dass das gem alle Probleme lösen wird. Es wird viel benutzt und immer noch entwickelt, auch wenn die Github-Issues sich nicht toll lesen. Und sollte ich mich da irren, kann das gem immer noch durch eine manuelle Lösung ersetzt werden. Das Ruby-Universum ist für sowas schon toll, die spezielle Lösung in der Sprache ist wie so oft der bessere Startpunkt für die Problemlösung gewesen.
onli blogging am : Rubys Twitter-Gem: Rate Limit exceeded vermeiden
Vorschau anzeigen