Willkommen zurück.
Es ist an der Zeit, mit unserem Twitter-Board etwas Gutes, eigentlich Produktives zu tun.
Was können wir hier also tun?
Nun, ich möchte ein Board erstellen, dieses Board wird gut sein, du willst wirklich nett zu deinen Followern
sein und du willst Leuten folgen.
Wenn Sie wirklich hinschauen, bin ich ziemlich schrecklich.
Ich habe nur sechs Leute, denen ich folge.
Aber wenn ich alle meine Follower durchgehen und jeden einzelnen von ihnen verfolgen müsste, sind das über
10000 Klicks.
Das ist eine ziemlich manuelle Aufgabe.
Können wir das mit unserem Bot machen?
Nun, ja, Sie können.
Also lass uns einen super großzügigen Bot machen, also wird dieser großzügige Bot immer folgen, wie können wir das
bauen?
Nun, wir schleifen einfach und sagen für Follower.
In und dann hier, t. P gibt uns einen sogenannten Curser.
Was ist nun dieser Fluch?
Wenn wir hier zur Dokumentation gehen und ich Curser eintippe.
Wenn wir hier lesen, bekommen wir, nun ja, eine wahre Fluchgeschichte. Wir sehen, dass wir Paginierung in vielen
Twitter-APIs verwenden.
Ob wir also Zeitleisten oder Benutzerlisten oder Nachrichten durchgehen, wir müssen uns durch verschiedene Seiten
klicken.
Rechts.
Normalerweise gibt es viele Follower oder viele Timeline-Informationen.
Der Cursor ermöglicht es uns also, im Wesentlichen auf einfache Weise alles auf Twitter durchzugehen, sei es durch
eine ganze Timeline oder durch eine ganze Follower-Liste, und sie geben Ihnen sogar eine schöne
Anleitung zur Verwendung.
Sie können zum Beispiel hier drüben sehen, machen wir das ein bisschen größer.
Wir sehen, dass wir diesen Tweet-Cursor verwenden können, um API zu erstellen, und unsere Zeitleistenelemente verwenden, um alle Elemente auf der Zeitleiste zu
erfassen.
Mit dem TWIP-Cursor können wir also tatsächlich API-Punkte ausführen.
Follower um alle Follower zu schnappen und dann machen wir einfach Punkt-Items.
Damit wir jetzt alle Follower mit diesen Followern durchschleifen können.
Nun, drucken wir sie einfach aus.
Nun, ich werde in diesem Fall Follower oder einen Follower drucken, weil wir hier durchschleifen und dann
nur Punktnamen sagen.
Das Problem dabei ist, dass wir, wenn wir so etwas tun, wenn wir, sagen
wir, viele Dinge durchlaufen, immer und immer wieder auf die API zugreifen.
Und das wird Twitter nicht gefallen.
Ich meine, das ist ein einfaches Beispiel, aber wenn wir ständig auf die Twitter-API treffen, trifft das die Twitter-Server,
wofür Twitter bezahlen muss, und wenn jeder auf der Welt immer und immer wieder schnell auf die Twitter-API
trifft, sagen wir , Python, das, wie wir wissen, auf Maschinen sehr schnell läuft, nun, es wird
die Server überlasten und sie viel Geld kosten oder die Server zum Absturz bringen.
Sie implementieren also tatsächlich ein sogenanntes Ratenlimit, bei dem ich nur die Twitter-API anfordern darf,
sagen wir alle paar Millisekunden, damit der Server nicht abstürzt.
Und Twitter erlaubt uns tatsächlich, mit dieser großen Twitter-Grenze zu arbeiten.
Also wenn ich hier eintippe, Ratenbegrenzer.
Es gibt tatsächlich eine Luft.
Sie können hier oben sehen, der Ratenlimitfehler, der ausgelöst
wird, wenn die API-Methode aufgrund des Erreichens des Ratenlimits von Twitter fehlschlägt. Lass uns
was machen.
Also werde ich eine kleine Hilfsfunktion erstellen, ich sage define, limit, handle, also behandeln
wir hier das Limit und übergeben den Cursor, der wiederum der . ist Cursor, der
leidenschaftlich sein oder die gesamten Daten-API-Follower durchgehen wird.
Und wir werden eine while-Schleife machen, die sagt, dass dies wahr ist.
Gib einfach weiter nach.
Fluch.
Als nächstes punktieren.
Weil Curser ein Generator ist.
Aber immer wenn wir nächstes Jahr weitertelefonieren, was übrigens intern der Cursor tut, ruft er ständig als
nächstes an und macht einfach weiter, macht aber so lange weiter, bis wir unsere Follower fertig
haben.
Wenn dies nicht der Fall ist.
Nun, in diesem Fall sage ich außer.
Und wir werden das eigentlich in einen Versuchsblock packen, also werde ich sagen, versuchen Sie es hier, damit wir Jacir
fangen können, also versuchen Sie es währenddessen.
Wahr.
Und dann außer.
Wenn wir dort ein Tipppunktratenlimit erhalten.
Nun, in diesem Fall möchte ich pausieren und nicht auf die Twitter-API klicken, damit wir nicht in Schwierigkeiten geraten
und darauf zurückkommen, wenn wir endlich etwas Zeit dafür haben.
Wir können das also tatsächlich mit einem in Python eingebauten Modul namens time tun, und time erlaubt uns, hier etwas wirklich Nützliches
zu tun.
Ich kann etwas tun, das sich Schlaf nennt, was im Wesentlichen sagt: Hey, pausiere das, was auch immer passiert,
bleib einfach ein paar Millisekunden in dieser Leitung.
Wenn wir also tausend machen, sind das tausend Millisekunden oder eine Sekunde.
Jetzt haben wir also ein Limit-Handle oder wir können es Limit-Handler nennen.
Und wenn wir den Limit-Handler, der einen Cursor empfängt, umschließen, dann umschließen wir einfach das Ganze.
Wie so.
Machen wir das ein bisschen größer.
Da gehst du.
Wir sind jetzt in der Lage, nicht zu missbrauchen und sicherzustellen, dass wir, wenn wir das Straßenlimit erreichen, eine kleine Pause einlegen, anstatt
nur noch schlimmer zu werden.
Also mal sehen ob das funktioniert hat.
Ich werde sparen.
Und führen Sie unseren Code aus, lassen Sie uns hier löschen und ausführen.
In Ordnung, sehen Sie, wie es gerade pausiert, also pausiert es, sobald wir die rote Grenze erreichen.
Und es geht einfach weiter und los gehts, es druckt alle Follower aus, die ich habe.
Das ist ziemlich cool, oder?
Nun, ich werde damit aufhören, weil, nun ja, es geht immer noch durch.
Aber was wir jetzt tun können, ist, dass wir wirklich jedem dieser einzelnen Menschen folgen können.
In meinem Fall bin ich nicht so viel auf Twitter.
Also lasst uns einfach zufällig jemandem hier folgen.
Folgen wir diesem Benutzer direkt hier.
Ich werde den Namen dieses Benutzers so kopieren und hier etwas Lustiges machen.
Ich werde sagen, ob.
Der Punktname des Followers ist dieser Person gleich.
Nun, in diesem Fall möchte ich dieser Person folgen.
Also werde ich sagen.
Follower-Punkt.
Folgen, wodurch ich dem Benutzer folgen kann.
Wenn ich dies speichere und meinen Code ausführe.
Es läuft, es läuft, es läuft, wie ich schon sagte, es dauert ein bisschen, weil
es die gesamte Liste durchlaufen muss, aber ich werde das Video anhalten.
Und wenn das erledigt ist, werden wir sehen, ob das funktioniert hat.