import tweepy # añade las credenciales de tu aplicación de twitter # como cadenas de texto CONSUMER_KEY = "CAMBIA_ESTO" CONSUMER_SECRET = "CAMBIA_ESTO" ACCESS_KEY = "CAMBIA_ESTO" ACCESS_SECRET = "CAMBIA_ESTO" # autentica las credenciales auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET) auth.set_access_token(ACCESS_KEY, ACCESS_SECRET) # crea un cliente de twiter t = tweepy.API(auth) # publica un saludo t.update_status("¡Propicios días! Soy un robotito :-P") # añade esta librería al principio de tu código import time # algunas citas memorables de la serie The Wire citas = """If the man comin', make ready for the man.| All in the game yo, all in the game.| Man, money ain't got no owners, only spenders.| Nigger, is you taking notes on a criminal fucking conspiracy?| - The game is the fuckin' game. Period. - Same as it was ever.|""".split("|\n") # iteramos sobre las citas y las publicamos de una en una for cita in citas: t.update_status(cita) time.sleep(60) # envía el tweet cada 60 segundos # buscamos mensajes que contengan la expresión "gaticos y monetes" busqueda = t.search(q="gaticos y monetes") # itero sobre estos mensajes for mensaje in busqueda: # capturo el nombre de usuario usuario = mensaje.user.screen_name # compongo el mensaje de respuesta miRespuesta = "@%s ¡monetes!" % (usuario) # envío la respuesta mensaje = t.update_status(miRespuesta, mensaje.id) # recupero las últimsa 5 menciones de mi usuario menciones = t.mentions_timeline(count=5) # ten en cuenta que: # si tu cuenta de twitter es nueva y no tiene menciones, no funcionará # si estás usando tu cuenta de todos los días, como hago yo, # enviarás mensajes a esas personas (o robotitos) for mencion in menciones: # capturo el nombre de usuario que me manda el mensaje usuario = mencion.user.screen_name # compongo el mensaje de respuesta miRespuesta = "¡Hola, @%s! Soy un robotito. Este es un mensaje automático, no le hagas caso" % (usuario) # envío la respuesta mensaje = t.update_status(miRespuesta, mention.id) # buscamos mensajes que contengan la expresión "viejóvenes" busqueda = t.search(q="viejóvenes") # para que no se descontrole, solo quiero retwitear los tres últimos mensajes if len(busqueda) >= 3: for mensaje in busqueda[:3]: # para retwitear un mensaje, ejecuto el método retweet # indicando el identificador único del mensaje en cuestión t.retweet(mensaje.id) else: for mensaje in busqueda: t.retweet(mensaje.id)