Lo que siempre quiso saber del API de Twitter y nunca se atrevió a preguntar

Se recomienda leer la versión actualizada a 2017

Actualmente Twitter es una de las mayores fuentes de información en tiempo real de Internet alimentada por millones de usuarios. Durante el último mes he intentado buscar respuestas estas preguntas:

  • ¿Cuál es la cantidad de tweets?
  • ¿Qué se puede obtener con los APIs de Twitter?
  • ¿Cuáles son las limitaciones del API de Twitter?
  • ¿Qué persistencia tienen los tweets?

Lo que he averiguado lo he  representarlo en una infografía para los muy ocupados y en modo textual para los que su curiosidad sea aún mayor.

¿Cuál es la cantidad de tweets?

El número de usuarios de Twitter  y por tanto el de tweets generados tiene un crecimiento espectacular.  El despegue comenzó en el 2009 y en un año se ha multiplicado por 25.  Con este tráfico de entrada cualquier evento global es una prueba de fuego para Twitter, como ha sido el caso de la Wold Cup que nos ha traído de nuevo a la ballena azul. Durante la segunda semana de la World Cup se ha alcanzado el record de  3.283 TPS (Tweets Per Second) y la media actual es de 750 TPS.  Esto hace casi inalcanzable obtener tal cantidad  de información (y almacenarla) por lo que habrá que pensar en  soluciones creativas para poder obtener los datos que se deseen.

¿Qué se puede obtener con los APIs de Twitter?

Twitter ofrece tres APIs:   Streaming API REST APISearch API aplicables a necesidades diferentes. El Streaming API proporciona un subset de tweets en casi tiempo real. Se establece una conexión permanente por usuario con los servidores de Twitter y mediante una petición http  se recibe un flujo continúo de tweets en formato json.  Se puede obtener una muestra aleatoria (statuses/sample), un filtrado (statuses/filter) por palabras claves o por usuarios. Sin embargo, los métodos más interesantes cómo obtener todo el caudal de tweets (statuses/firehose) o sólo los tweets que tienen enlaces (statuses/links) o los tweets con retweets (statuses/retweet) «Is not a generally available resource» :-( El Search API suministra los tweets con una profundidad en el tiempo de 7 días que se ajustan a la query solicitada. Es posible filtrar por, cliente utilizado, lenguaje y localización. No requiere autenticación y los tweets se obtienen en formato jsonatom. El REST API ofrece a los desarrolladores el acceso al core de los datos de Twitter. Todas las operaciones que se pueden hacer vía web son posibles realizarlas desde el API.  Dependiendo de la operación requiere o no autenticación, con el mismo criterio que en el acceso web. Sopota los formatos: xml, json, rss, atom. El Search API ofrece una información más limitada del tweet,  en concreto sobre los datos del autor en el que solo indica el Id,  el screen_name y la url de su avatar. Los otros dos APIs si ofrecen el perfil completo del autor en el momento de la escritura del tweet.

¿Cuáles son las limitaciones de  los APIs de Twitter?

En el Streaming API el flujo es continuo y la velocidad de recepción de tweets tendrá fluctuaciones que dependerán del ancho de banda de los dos extremos de la conexión y la sobrecarga de los servidores de Twitter. Actualmente estoy haciendo medidas en dos servidores y publicaré los resultados tan pronto como estén disponibles. En el Search API y en el REST API existe una limitación de 150 peticiones a la hora por usuario o por IP si la llamada no está autenticada. Es importante saber cómo realizar la  paginación de las  peticiones de una manera óptima para sacarle el  máximo partido.

API Petición Max. Tamaño Pagina Max. Total
Search search 200 tweets 1500 tweets
REST statuses 200 tweets 3200 tweets
REST friends/ids 5.000 id users Los que haya (*)
REST followers/ids 5.000 id users Los que haya (*)

(*) hemos obtenido los seguidores de Barack Obama que sobrepasa los 4,5 millones de followers

¿Qué persistencia tienen los tweets?

Aunque todos los tweets residan en las BB.DD. de Twitter hay una limitación temporal para obtenerlos.

API Limitación temporal Limitación tamaño
Streaming Solo tiempo real
Search -7 días 1500 últimos tweets
REST NO 3200 últimos tweets

También te podría gustar...

9 Respuestas

  1. jose dice:

    Hola. En mi twitter me sale una leyenda que dice: »se ha superado el limite de la API de twitter para esta cuenta» Que significa eso??

  2. Juanma dice:

    Buenas de nuevo Mari Luz!! sigo leyendo y estudiando sobre el tema de la minería de datos en Twitter. Me surge una preguntilla, los métodos (statuses/firehose) (statuses/links) o (statuses/retweet) nos son disponibles porque Twitter no los proporciona? o porque simplemente no hay máquina que ahora mismo por ejemplo no pueda procesar todos los twitts en tiempo real?

    Muchas gracias por tu atención.

  3. Juanma:

    El oauth no es un API, es un método para identificarse y lo necesitas para el REST API. El oauth es para controlar las aplicaciones que se montan sobre twitter.

    El Streaming API necesita usuario Password de twiter

    El API del search, no necesita autentificación. Si lo usas en modo anínimo te cuenta los accesos por la IP y si te autentificas con usuario/password te los cuenta por usuario

  4. Juanma dice:

    Hola Mari Luz de nuevo, ante mi desconocimiento en la API´s de Twitter me surge una duda, aqui hablas de 3 API´s distintas, pero ahora se utiliza OAuth, verdad? la API´s de Twitter OAuth sustituye a estas 3?

    Gracias ;)

  5. @isolMAC Gracias por la informción en la dioumentación del API no lo habían actualizado cuando hice la infografía. Habrá que probar lo límites de forma empirica portque he visto que otros límites tambien han cambiado.

  6. isolMAC dice:

    Muy buena infografia y muy buen resumen. Solo una cosita: creo que ahora el límite de peticiones/hora es de 350, al menos con OAuth

  1. julio 12, 2010

    […] Lo que siempre quiso saber del API de Twitter y nunca se atrevió a preguntar – Actualmente Twitter es una de las mayores fuentes de información en tiempo real de Internet alimentada por millones de usuarios. Durante el último mes he intentado buscar respuestas estas preguntas: ¿Cuál es la cantidad de tweets? ¿Qué se puede obtener con los APIs de Twitter? ¿Cuáles son las limitaciones del API de Twitter? ¿Qué persistencia tienen los tweets? […]

  2. agosto 13, 2010

    […] original en: Lo que siempre quiso saber del API de Twitter y nunca se atrevió a preguntar […]

  3. octubre 9, 2017

    […] de los post más populares de barriblog es Lo que siempre quiso saber del API de Twitter y nunca se atrevió a preguntar. Es una entrada de utilidad para los que tienen curiosidad sobre esta API pero los cambios que va […]

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.