jueves, 19 de septiembre de 2013

Simple bot en Python para Twitter



Si estan sumergidos en el mundo de Twitter, seguramente se han topado con algun que otro bot que se encarga de hacer favs, retweets o mandar mensajes directos, etc, de acuerdo a la necesidad del este mismo, y quizas se han preguntado como podria crearse uno. Pues me entro la curiosidad de nuevo (antes habia jugueteado un poco con el API de Twitter), y decidi intentar escribir uno que hiciera retweets de acuerdo a una palabra de buqueda que nosotros le pasaramos como parametro. 

Cabe comentar que me guie de este post para hacerlo, con las diferencias de que aquel funciona para hacer favs y ademas usa la libreria Twitter para hacerlo. Este es para hacer retweets y ademas usa la libreria Tweepy que es facil de entender y de usar;tambien tuve que meterme de nuevo a la documentación de Twitter para aprender y/o recordar sobre su API.

Requisitos:
Python
Tweepy
Crear una app en  Twitter developers

Instalamos la libreria tweepy y twitter.
sudo pip install tweepy twitter
Importamos tweepy, y de la libreria twitter solo TwitterHTTPError con la que atraparemos algun error al retuitear. Desde login (donde previamente habremos puesto los codigos) tambien importamos las llaves y tokens de acceso para la app en Twitter.
# -*- coding: utf-8 -*-

import tweepy
from twitter import TwitterHTTPError
from login import *
Nos conectamos a Twitter mediante OAuth.
# OAuth process, using the keys and tokens
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(OAUTH_TOKEN, OAUTH_SECRET)
La función search_tweet() recibirá una palabra de busqueda "q", en este caso hago la pregunta en pantalla y paso la variable query como parámetro de busqueda; con result_type le decimos que busque en los mas recientes publicados y con count que retuitee los primeros 5. Iteramos sobre todos los tuits que encontramos y hacemos retuit con api.retweet(result.id) y lo mostramos en pantalla.
# Function that Search a tweet and else do a retweet for all of them
def search_tweet():
 query=raw_input("Palabra de busqueda: ")
 results=api.search(q=str(query), result_type='recent', count=5)
 for result in results:
  api.retweet(result.id)
  print "RT @" + result.user.screen_name + " :"
  print result.text
  
search_tweet() 

Código en Github.
Documentacion de Tweepy.

Saludos.

miércoles, 11 de septiembre de 2013

Probando Firefox OS en un Xperia Ray


Con el lanzamiento del sistema operativo para moviles de Firefox para todo aquel que quiera probarlo, pues me entraron las ganas de hacerlo y de construir el sistema apartir de los moviles que oficialmente han sido portados por Mozilla, como el Nexus One o el Galaxy SII, sin embargo y despues de empezar el proceso, clonando y descargando los repositorios necesarios, siguiendo la guia oficial y teniendo problemas y ademas poco tiempo para realizarlo he decidido detenerme y hacerlo para despues. 

Sin embargo, navegando por los foros de xda developers me he encontrado con que alguien ha portado el sistema y nos comparte la rom lista para instalarse en el ray.

Para instalar hay que tener en cuenta que el dispositivo debe tener el bootloader desbloqueado; el mio no lo estaba, asi que fue un proceso algo largo lograrlo:

A) Rootear el dispositivo.
B) Instalar el recovery, en este caso con la app Xparts disponible en la store.
C)Desbloquear el bootloader, buscando opciones di con una fácil y barata, en wotanserver.com el precio por liberar el dispositivo (usarlo con cualquier sim de cualquier compañia) ademas del desbloqueo del bootloader tiene un costo de 7.99 euros, muy barato.
D) Desbloqueado el bootloader y descargada la rom, extraemos del zip el boot.img para flashear el kernel mediante fastboot o con Flashtool. El método que deseen. Antes de flashear el kernel, es recomendable traspasar la rom a la sdcard del teléfono.
E) Flasheado el kernel, instalar la rom desde la sdcard del teléfono, iniciar en modo recovery apretando el boton volumen down varias veces mientras enciende el teléfono y realizando Wipe factory reset y Wipe cache partition ; seleccionar Install zip from sdcard y elegir la rom que transferimos anteriormente.

Si todo ha salio como esperamos, tendremos en unos minutos Firefox OS en el Xperia Ray. Congrats!

Firefox OS en el Xperia Ray

Cosas que no funcionan:
- Grabar video.
- Los botones back y menu ya que firefox os solo usara un botón home.
- No he probado el 3g pero supongo funciona correctamente.

Despues de la instalacion, el teléfono ha recibido al menos tres actualizaciones via OTA: dos del sistema y uno del marketplace, tal y como Mozilla ha dicho se haran los updates.

Saludos.