@@ -178,10 +178,331 @@ public class TwitterCrawler {
Sustituye `oauth_consumer_key` y `oauth_consumer_secret` por los valores de tu aplicación y pruébalo.
### Gestión de tweets con Json
Los tweets devueltos por Twitter (en general cualquier información que devuelva el API). Creamos dos clases para guardar, por un lado el Tweet y por otro lado el usuario que lo creó, aunque el primero apunta al segundo. Las clases son las siguientes
Vamos a probar con la función del API [get user timeline](https://dev.twitter.com/rest/reference/get/statuses/user_timeline) que permite obtener los tweets más recientes de un usuario.
Inspecciona la página del API. Revisa los parámetros de la llamada a esa función del API Rest, verás que puedes usar `user_id` que es el ID de twetter (poco conocido, un número) o bien el `screen_name' que es el nombre de la cuenta de twitter que se muestra por internet, por ejemplo @realmadrid.
Además se pueden especificar el número de Tweets a obtener.
Para obtener 2 tweets de la cuenta @realmadrid usa el siguiente código:
Observa, depurando paso a paso y usando break points (en ocasiones entrar dentro de una función con eclipse no funciona - dado que no encuentra el código - lo mejor es usar breakpoints en los métodos en los que queremos parar) lo siguiente:
* Creación de la cabecera de autenticación a partir del objeto BearerToken
* Como se procesa un array de tweets en Json usando el método deserializeJsonArray de la clase Tweet
* Observa cómo GSON automáticamente procesa el objeto User que está dentro de la cadena de texto json de cada tweet
* Observa cómo se procesan los campos, para ver claramente como es el JSON de partida usa un parser online como el de http://json.parser.online.fr/
### Peticiones con cursores
La función del API descrita en https://dev.twitter.com/rest/reference/get/statuses/user_timeline tiene un límite de 200 tweets por petición.
El problema es que los API REST no tienen estado, entonces, ¿cómo bajar los 3200?
Para ello, es necesario usar cursores, elementos que le informen a Twitter a partir de qué Tweet deseas obtener los siguientes 200.
Para ello utilizamos el parámetro max_id de la petición, usando la información contenida aquí https://dev.twitter.com/rest/public/timelines
Usemos una cuenta popular, cualquiera con más de 3200 Tweets. Para ello usa cualquiera de las más populares del mundo (yo voy a usar @realmadrid).
De todos los tweets recibidos, hay que buscar cuál de ellos tiene menor id y usarlo como parámetro (restándole 1) para la siguiente petición.
Averigua como podrías obtener más Tweets haciendo peticiones poco a poco con el método explicado (lo veremos en detalle el proximo día)
## Importa el proyecto completo en Eclipse desde este repositiorio