Tutorial Raspberry Pi - Calculadora con Twitter
¡Hola! Hoy traigo un tutorial curioso. No es nada del otro mundo y se me ocurrió un día de estos que tienes una Raspberry Pi delante y quieres hacer algo, aunque sea muy simple. Pues este es el caso.
Os recomiendo ver tutorial de Twitter + Raspberry Pi antes de este porque estoy haciendo una continuación o aplicación de ese.
Voy a enseñaros a hacer una minicalculadora con Twitter y una Raspberry Pi. Su funcionamiento es muy básico: tengo una cuenta de Twitter asociada a la Raspberry Pi y cualquier otra cuenta de Twitter desde la que mandaré una operación. Esta operación llegará a la cuenta de la Raspberry Pi, la resolverá y te mencionará con el resultado:
@RasPiCalcenero 30, 2014
@_Mario_Perezhttp://t.co/dtL0aR1pSIenero 30, 2014
Así de simple. Funciona con operaciones sencillas. He hecho uso de la función eval() de Python para resolver la operación. El código es sencillo, pero me ha dado problemas la API de Twitter por pasarme de llamadas. Por seguridad, tiene un límite de consultas en un determinado rango de tiempo. La verdad es que no se cuánto es. Lo he puesto a que lea cada minuto y parece que no da problemas, pero bueno, probadlo y me contáis.
Tenéis que mandar los Tweets con el siguiente formato: @RasPiCalc [operación]
Información: Esto se ejecuta en mi Raspberry Pi y no la tengo siempre encendida, así que si no funciona, es porque está apagada.
Para facilitar la tarea de buscar la operación propuesta en el tweet, he puesto que haya que meterla entre corchetes. Aquí tenéis el código:
#!/usr/bin/env python import tweepy import time def find_between( s, first, last ): try: start = s.index( first ) + len( first ) end = s.index( last, start ) return s[start:end] except: return "" #Coloca dentro de las comillas tus claves... CONSUMER_KEY = 'Aquí coloca Consumer key' CONSUMER_SECRET = 'Aquí coloca Consumer secret' ACCESS_KEY = 'Aquí coloca Access token' ACCESS_SECRET = 'Aquí coloca Access token secret' #En esta parte nos identifica para poder realizar operaciones auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET) auth.set_access_token(ACCESS_KEY, ACCESS_SECRET) api = tweepy.API(auth) last_mention = api.mentions_timeline(count=1) for last_men in last_mention: last = last_men while True: time.sleep(60) mentions = api.mentions_timeline(count=1) for mention in mentions: cur = mention if not (cur.text==last.text and cur.user.screen_name==last.user.screen_name): last = cur res = find_between(cur.text, "[", "]") if not (res==""): res = eval(res) time.sleep(60) api.update_status('@'+cur.user.screen_name+" Result: "+str(res)+" Visit geekytheory.com for more info :)") Pues más simple imposible. Está prácticamente todo explicado en el tutorial de Twitter + Raspberry Pi. Si tenéis cualquier duda, pues dejad un comentario. ¡Un saludo!