Ben tornato.
È ora di fare qualcosa di buono, realmente produttivo con la nostra bacheca Twitter.
Allora cosa possiamo fare qui?
Bene, voglio creare un forum, questo forum andrà bene, vuoi essere davvero gentile con i tuoi follower
e vuoi seguire le persone.
Se guardi davvero, sono piuttosto orribile.
Ho solo sei persone che sto seguendo.
Ma se dovessi passare in rassegna tutti i miei follower e seguirli tutti, sarebbero più di
10.000 clic.
È un compito piuttosto manuale.
Possiamo farlo con il nostro bot?
Bene, sì, puoi.
Quindi facciamo un bot super generoso, quindi questo bot generoso seguirà sempre, come possiamo costruirlo?
Bene, facciamo semplicemente un loop e diciamo per follower.
In e poi qui, t. P ci dà qualcosa chiamato un maledetto.
Ora, cos'è questo maledetto?
Se andiamo alla documentazione qui e digito Curser.
Avremo, beh, una vera storia di maledizione se leggiamo qui, vediamo che usiamo l'impaginazione in molte API
di Twitter.
Quindi, sia che stiamo esaminando linee temporali o elenchi di utenti o messaggi, dobbiamo fare clic su pagine
diverse.
Destra.
Di solito ci sono molti follower o molte informazioni sulla cronologia.
Quindi il cursore ci consente di esaminare, essenzialmente in modo semplice, tutto su Twitter, che si tratti di
un'intera timeline o di un intero elenco di follower, e ti danno anche un bel tutorial
su come usarlo.
Puoi vedere qui, ad esempio, rendiamolo un po' più grande.
Vediamo che possiamo usare quel cursore tweet per fare API, usare i nostri elementi della linea temporale per afferrare tutti gli elementi sulla linea
temporale.
Quindi con il cursore TWIP, possiamo effettivamente fare punti API.
Follower per prendere tutti i follower e poi facciamo semplicemente punti.
In modo che ora possiamo scorrere tutti i follower con questo follower.
Bene, stampiamoli e basta.
Ora, stamperò follower o un follower in questo caso perché stiamo scorrendo qui e poi diciamo solo il
nome del punto.
Ora, il problema qui è che quando facciamo qualcosa del genere, quando diciamo che stiamo scorrendo
un sacco di cose, stiamo andando a colpire l'API ancora e ancora e ancora.
E a Twitter non piacerà.
Voglio dire, questo è un semplice esempio, ma quando colpiamo costantemente l'API di Twitter che colpisce i server
di Twitter, cosa per cui Twitter deve pagare, e se tutti nel mondo colpiscono l'API di Twitter più
e più volte velocemente, diciamo , Python, che come sappiamo sulle macchine gira molto velocemente, beh, sovraccaricherà
i server e costerà loro un sacco di soldi o farà crashare i server.
Quindi implementano effettivamente qualcosa chiamato limite di velocità, in cui mi è permesso solo richiedere l'API di Twitter,
diciamo, ogni paio di millisecondi in modo che non si interrompa il server.
E Twitter in realtà ci consente di lavorare con questo grande limite di Twitter.
Quindi, se digito qui, limitatore di velocità.
C'è davvero aria.
Puoi vedere qui, l'errore di limite di frequenza, che viene generato quando il metodo API fallisce a
causa del raggiungimento del limite di frequenza di Twitter, essere qui, ci consente di utilizzare l'errore di limite di frequenza per dire, ehi, se colpiamo
questo errore, facciamo qualcosa.
Quindi creerò una piccola funzione di supporto, dirò define, limit, handle, quindi gestiamo qui
il limite e passeremo il cursore, che è, di nuovo, il cursore che sarà appassionato
o passerà attraverso l'intero follower dell'API di dati.
E faremo un ciclo while che dice mentre questo è vero.
Continua a cedere.
maledetto.
Punto successivo.
Perché Curser è un generatore.
Tuttavia, ogni volta che continuiamo a chiamare l'anno prossimo, che, tra l'altro, internamente, questo è ciò che fa il
cursore, chiama costantemente il prossimo e continua a farlo, continua fino a quando non finiamo i nostri follower,
comunque.
Se questo non è il caso.
Bene, in tal caso, dirò tranne.
E lo avvolgeremo in un blocco try, in realtà, quindi dirò prova qui così possiamo
catturare Jacir, quindi prova mentre.
Vero.
E poi tranne.
Se otteniamo un limite di velocità di puntamento lì.
Bene, in tal caso, voglio mettere in pausa e non premere l'API di Twitter in modo da non finire nei guai e tornare
su di esso quando finalmente gli avremo concesso un po' di tempo.
Quindi possiamo effettivamente farlo con un modulo integrato in Python chiamato time and time che ci consente di fare qualcosa di veramente
utile qui.
Posso fare qualcosa chiamato sleep, che essenzialmente dice, ehi, metti in pausa, qualunque cosa stia succedendo, rimani
su questa linea per qualche millisecondo.
Quindi se facciamo mille, ecco cosa, mille millisecondi o un secondo.
Quindi ora abbiamo un limit handler o possiamo chiamarlo limit handler.
E se avvolgiamo il gestore del limite, che riceve un cursore, quindi avvolgiamo l'intera cosa.
Così.
Rendiamolo un po' più grande.
Ecco qua.
Ora siamo in grado di non abusare e di assicurarci che se raggiungiamo il limite della strada, ci prendiamo un po' di
pausa invece di peggiorare.
Quindi vediamo se ha funzionato.
vado a salvare.
Ed esegui il nostro pezzo di codice, chiariamo qui ed eseguiamo questo.
Va bene, vedi come si sta fermando in questo momento, quindi non appena raggiungiamo il limite rosso, si ferma.
E continua ad andare avanti ed ecco fatto, sta stampando tutti i follower che ho.
È piuttosto bello, vero?
Ora, in realtà lo fermerò perché, beh, lo sta ancora attraversando.
Ma quello che possiamo fare ora è che possiamo effettivamente seguire ciascuna di queste singole persone.
Ora, nel mio caso, non sono molto su Twitter.
Quindi seguiamo qualcuno qui a caso.
Seguiamo questo utente proprio qui.
Copierò il nome di questo utente in questo modo e farò qualcosa di divertente qui.
Sto per dire se.
Il nome del punto del follower è uguale a questa persona.
Bene, allora in tal caso, voglio seguire questa persona.
Quindi sto per dire.
Punto seguace.
Follow, che mi permette di seguire l'utente.
Se salvo questo ed eseguo il mio codice.
È in esecuzione, è in esecuzione, è in esecuzione, come ho detto, ci vuole un po' di
tempo perché deve passare attraverso l'intero elenco, ma metterò in pausa il video.
E quando questo sarà fatto, vedremo se ha funzionato.