Controlando followers nuevos y perdidos en Twitter
Tras la reinstalación de las command line tools debido a la actualización OS X Mountain Lion, pude juguetear con Perl y el módulo Net::Twitter. Por suerte para lo que yo quería hacer no me ví afectado por las modificaciones de la API de Twitter versión 1.1.
Net::Twitter es un módulo de Perl que permite conectarte con la API de Twitter. El módulo se puede descargar desde CPAN (descargar Net::Twitter) y para su uso es más que recomendable registrarse en la Web de Developers de Twitter para obtener una KEY que te permitirá realizar 350 peticiones por hora. Sin la KEY de developer solamente se podrán hacer 150 peticiones por hora.
Al lió... El script controla los movimientos de followers de una determinada cuenta. Así podremos ver cada vez que lo ejecutemos los movimientos de followers (nuevos y perdidos) que ha tenido esa cuenta desde la última vez que se ejecutó el script.
Primero voy a explicaros los 3 archivos de texto que maneja el script:
- descarga_followers.txt: es un archivo temporal donde se descarga toda la lista de followers actualizados que tiene la cuenta de Twitter que le indiquemos.
- followers_$user.txt: este archivo es una copia del anterior que se actualiza al finalizar el script y donde se quedarán los followers de la cuenta.
- historial_followers_$user.txt: aquí quedarán reflejados los movimientos de followers (nuevos y perdidos) que tiene la cuenta de Twitter.
Para ejecutar el script deberemos tener Perl y el módulo Net::Twitter instalado.
./twitter.pl twitterUser
Una vez lanzado el script, se descargará la lista de followers para la cuenta indicada en el archivo descarga_followers. A la vez que se descargan los followers irá comprobando su existencia en la última lista de followers almacenados para esa cuenta (followers_$user), en caso que no se encuentre será un nuevo follower.
Una vez se descargue la lista de followers actualizada y sabiendo cuales son nuevos, se ejecutará el proceso inverso. Para ello se compara la última lista de followers almacenada en el sistema para la cuenta (followers_$user), con la lista temporal y actualizada de followers (descarga_followers). Todo follower de la lista follower_$user no encontrado en descarga_followers será un follower perdido.
Por último, una vez se conocen los nuevos followers y los perdidos, se copiará la lista temporal actualizada de followers (descarga_followers) en el fichero de followers permanente correspondiente a la cuenta indicada (followers_$user).
Todos estos movimientos quedarán reflejados en el fichero historial_followers_$user.
Como veréis el script no es gran cosa es por ello os dejo el código fuente abierto a cualquier corrección o mejora que queráis realizarle.