Bienvenido de nuevo.
Es hora de hacer algo bien, realmente productivo con nuestro tablero de Twitter.
Entonces, ¿qué podemos hacer aquí?
Bueno, quiero crear un tablero, este tablero va a estar bien, quieres ser muy amable con tus seguidores
y quieres seguir a la gente.
Si realmente miras, soy bastante horrible.
Solo tengo seis personas a las que sigo.
Pero si tuviera que pasar por todos mis seguidores y seguir a cada uno de ellos, eso es más de
10000 clics.
Esa es una tarea bastante manual.
¿Podemos hacer eso con nuestro bot?
Bueno, sí, puedes.
Así que hagamos un bot súper generoso, para que este generoso bot siempre lo siga, ¿cómo podemos construir
esto?
Bueno, simplemente hacemos un bucle y decimos por seguidor.
En y luego aquí, t. P nos da algo llamado cursor.
Ahora, ¿qué es este maldito?
Si vamos a la documentación aquí y escribo Curser.
Obtendremos, bueno, una historia real de cursores si leemos aquí, vemos que usamos la paginación en muchas API
de Twitter.
Entonces, ya sea que estemos atravesando líneas de tiempo o listas de usuarios o mensajes, tenemos que hacer clic en diferentes
páginas.
Derecha.
Por lo general, hay muchos seguidores o mucha información de línea de tiempo.
Entonces, el cursor nos permite, esencialmente, de una manera fácil, revisar todo en Twitter, ya sea a través de una línea
de tiempo completa o a través de una lista completa de seguidores, e incluso te brindan un buen
tutorial sobre cómo usarlo.
Puedes ver aquí, por ejemplo, hagamos esto un poco más grande.
Vemos que podemos usar ese cursor de tweet para hacer API, usar nuestras líneas de tiempo para tomar todos los elementos en la línea de
tiempo.
Entonces, con el cursor TWIP, podemos hacer API dot.
Seguidores para captar a todos los seguidores y luego simplemente hacemos puntos.
Para que podamos recorrer todos los seguidores ahora con estos seguidores.
Bueno, vamos a imprimirlos.
Ahora, voy a imprimir seguidores o un seguidor en este caso porque estamos pasando por aquí y luego solo decimos
el nombre del punto.
Ahora, el problema aquí es que cuando hacemos algo como esto, cuando digamos que estamos repasando
muchas cosas, vamos a utilizar la API una y otra y otra vez.
Y a Twitter no le va a gustar eso.
Quiero decir, este es un ejemplo simple, pero cuando constantemente usamos la API de Twitter, eso está afectando a los servidores
de Twitter, por lo que Twitter tiene que pagar, y si todo el mundo usa la API de Twitter una
y otra y otra vez rápidamente, digamos , Python, que como sabemos en las máquinas se ejecuta muy rápido,
bueno, va a sobrecargar los servidores y les va a costar mucho dinero o colapsar los servidores.
Entonces, en realidad implementan algo llamado límite de velocidad, donde solo puedo solicitar la API de
Twitter, digamos, cada dos milisegundos para que no bloquee el servidor.
Y Twitter realmente nos permite trabajar con este gran límite de Twitter.
Entonces, si escribo aquí, limitador de velocidad.
De hecho, hay aire.
Puede ver aquí arriba, el error de límite de tasa, que se eleva cuando el método de la
API falla debido a que se alcanza el límite de tasa de Twitter, esté aquí, nos permite usar el error de límite de tasa para decir, oye, si llegamos
a este error, hagamos algo.
Así que voy a crear una pequeña función auxiliar, voy a decir definir, limitar, manejar, entonces vamos a manejar
aquí el límite y vamos a pasar el cursor, que es, nuevamente, el cursor que va a ser apasionante
o pasará por toda la API de datos de seguidores.
Y vamos a hacer un ciclo while que dice si esto es cierto.
Sigue cediendo.
Maldito.
Punto siguiente.
Porque Curser es un generador.
Sin embargo, cada vez que seguimos llamando el próximo año, lo cual, por cierto, internamente, esto es lo que está
haciendo el cursor, simplemente está llamando constantemente a continuación y continúa, continúa hasta que terminemos con nuestros seguidores,
sin embargo.
Si este no es el caso.
Bueno, en ese caso, voy a decir que excepto.
Y vamos a envolver esto en un bloque de prueba, en realidad, así que voy a decir que intente aquí para que
podamos atrapar a Jacir, así que intente mientras.
Verdadero.
Y luego excepto.
Si obtenemos un límite de tasa de puntos de propina allí.
Bueno, en ese caso, quiero hacer una pausa y no presionar la API de Twitter para que no nos metamos en problemas y
volvamos a ella cuando finalmente le hayamos dado un poco de tiempo.
Así que podemos hacer eso con un módulo integrado en Python llamado tiempo y tiempo que nos permite hacer algo realmente
útil aquí.
Puedo hacer algo llamado dormir, que básicamente dice, oye, solo pausa esto, pase lo que pase, quédate
en esta línea por unos milisegundos.
Entonces, si hacemos mil, eso es, mil milisegundos o un segundo.
Así que ahora tenemos un controlador de límite o podemos llamarlo controlador de límite.
Y si ajustamos el controlador de límites, que recibe un cursor, entonces simplemente ajustamos todo esto.
Al igual que.
Hagamos esto un poco más grande.
Ahí tienes.
Ahora podemos no abusar y asegurarnos de que si llegamos al límite de la carretera, hagamos una pausa
en lugar de empeorar.
Así que veamos si funcionó.
Voy a salvar.
Y ejecute nuestro fragmento de código, aclaremos aquí y ejecutemos esto.
Muy bien, ¿ves cómo se está pausando en este momento? Tan pronto como lleguemos al límite rojo, se detiene.
Y sigue funcionando y ahí lo tienes, está imprimiendo todos los seguidores que tengo.
Eso es muy bueno, ¿verdad?
Ahora, en realidad voy a detener esto porque, bueno, todavía lo está pasando.
Pero lo que podemos hacer ahora es realmente seguir a cada una de estas personas individuales.
Ahora, en mi caso, no estoy mucho en Twitter.
Así que sigamos a alguien aquí al azar.
Sigamos a este usuario aquí mismo.
Voy a copiar el nombre de este usuario así, y voy a hacer algo divertido aquí.
Voy a decir si.
El nombre del punto seguidor es igual a esta persona.
Bueno, en ese caso, quiero seguir a esta persona.
Así que voy a decir.
Seguidor Dot.
Seguir, que me permite seguir al usuario.
Si guardo esto y ejecuto mi código.
Se está ejecutando, se está ejecutando, se está ejecutando, como digo, lleva un poco de tiempo porque
tiene que pasar por toda la lista, pero voy a pausar el video.
Y cuando esto esté hecho, veremos si funcionó.