Manejar Twitter desde Python
Hace mucho tiempo busqué un módulo que fuese fácil y sencillo para manejar Twitter desde un script en Python. Buscando un poco encontré un par de módulos antiguos que usaban la autenticación básica ( Usuario y contraseña ) pero ya son obsoletos, pues Twitter ahora exige que esta sea por medio de OAuth; buscando más y más logré toparme con la librería perfecta llamada Tweepy.
No siendo más, explicaré cómo usarla de manera sencilla.
• Obtener Tweepy
Puede descargarse directamente desde PyPi o desde mi Dropbox.
• Registrar la aplicación en Twitter
Primero que todo hay que ir a este enlace: https://dev.twitter.com/apps/new Quizá deba iniciar sesión.
Posteriormente procedemos a rellenar los campos necesarios para el registro de la siguiente manera:
Finalizado lo anteriormente expuesto, damos clic en “Register application ” y veremos algo así:
Dejamos la ventana abierta o guardamos los valores de Consumer key y Consumer secret, ya que posteriormente los necesitaremos.
• Conexión con la cuenta de Twitter
Como la autenticación se realiza de otra forma, la aplicación debe de ser autorizada para que pueda emplearse como cliente para nuestra cuenta de Twitter.
Crearemos un script de un sólo uso, el cual generará los datos necesarios para poder conectarnos automáticamente en el futuro a nuestra cuenta.
#!/usr/bin/env python import tweepy CONSUMER_KEY = 'Su Consumer Key aqui' CONSUMER_SECRET = 'Su Consumer Secret aqui' auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET) auth_url = auth.get_authorization_url() print 'Please authorize: ' + auth_url verifier = raw_input('PIN: ').strip() auth.get_access_token(verifier) ACCESS_KEY = auth.access_token.key ACCESS_SECRET = auth.access_token.secret print "Create keys.py..." f = open('keys.py','w+') f.write('#!/usr/bin/env python\n\n') f.write("CONSUMER_KEY = '"+CONSUMER_KEY+"'\n") f.write("CONSUMER_SECRET = '"+CONSUMER_SECRET+"'\n") f.write("ACCESS_KEY = '"+ACCESS_KEY+"'\n") f.write("ACCESS_SECRET = '"+ACCESS_SECRET+"'\n") f.close()
Ejecutamos el código en nuestro sistema y al hacerlo veremos el siguiente mensaje:
Please authorize: [URL] PIN:
Abrimos la URL en nuestro navegador y ya deberíamos ver la conexión con Twitter por medio de OAuth:
Autorizamos la aplicación y ya podemos ver el PIN que nos pide el script, el cual será necesario para autenticar la conexión entre el cliente y la cuenta de Twitter.
PIN: 3034766
Ahora bien, si observamos el contenido del archivo generado por el script ( keys.py ) encontramos lo siguiente:
#!/usr/bin/env python CONSUMER_KEY = 'nXHTqgLqRQzXDuHmxxyQ' CONSUMER_SECRET = 'OCFsNoCmFzpjJ4aH7r4UUh97hA4gohB98yW871Trc' ACCESS_KEY = '300042811-3e5Klqr1Yb7N4pTS6gwCaDBHHie9QPcF8eU28vkk' ACCESS_SECRET = 'OPCURWCLKJoBQgXzjih7GVpbM0JqokSrrYhzOSsN8'
• Publicar en Twitter
Ya todo está listo. La aplicación ya se ha registrado en Twitter y se conecta satisfactoriamente a nuestra cuenta.
Creamos un script sencillo…
#!/usr/bin/env python from keys import * import tweepy OAuth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET) OAuth.set_access_token(ACCESS_KEY, ACCESS_SECRET) API = tweepy.API(OAuth) Tweet = raw_input('Tweet: ') API.update_status(Tweet)
Ejecutamos
$ python CliTweeting.py Tweet: Saludos a todos, recuerden seguir a @DaW_Labs
¡¡Vualá!!, logramos enviar el primer Tweet desde Python…
Sólo queda explotar la capacidad al máximo que ofrece esta librería, espero que la disfruten.
Saludos.,
| Este artículo fue publicado por WindHack el 20 junio, 2011 a las 9:53 AM, y está archivado en Programación, Python. Sigue las respuestas a esta entrada a través de RSS 2.0. Puedes dejar un comentario o enviar un trackback desde tu propio sitio. |

Descargar









