2011-05-18 5 views
9

Me gustaría recuperar los tweets para obtener un hashtag y ordenarlos de los más retuiteados a los menos retuiteados.Recuperar la mayoría de los tweets retweeted para un hashtag dado

Lo más parecido que he encontrado es el uso de la llamada búsqueda y utilizar la etiqueta Tipo: ej .: http://search.twitter.com/search.json?q=TheHashTagHere&result_type=popular

Sin embargo, no estoy seguro de cómo funciona la opción "populares". Por ejemplo, si encuentra 100 tweets con ese hashtag, creo que debería mostrar los X tweets más retuiteados, y si ninguno de esos tweets ha sido retuiteado, entonces debería mostrar X de ellos aleatoriamente (u ordenados de alguna otra manera). como el más reciente).

Lamentablemente, si se sigue algún tipo de regla desconocida para identificar lo que es popular y lo que no, incluso hashtags con miles de tweets podría devolver solo uno o dos resultados.

Espero haber sido claro. Gracias de antemano :)

PD: ¿Usaré PHP pero creo que eso no debería afectar la pregunta?

+0

¿Crees que podrías mostrarme todo el código para usar esta API en particular? Intento hacer algo muy similar y no sé exactamente cómo abordar esto. Gracias – Lance

+0

Bueno, la respuesta de GmonC y la mía contienen prácticamente todo lo que necesitas. Lo siento, ahora mismo no tengo mi código pero consultar http://dev.twitter.com/ debería ayudar. – ozke

Respuesta

6

Los resultados a veces contener un campo result_type en los metadatos con un valor de "reciente" o "popular". Los resultados populares se derivan por un algoritmo que Twitter calcula, y hasta 3 aparecerán en el modo mixto predeterminado bajo el que opera la API de búsqueda . Los resultados populares incluyen otro nodo en los metadatos llamado recent_retweets. Este campo indica cuántos retweets ha tenido el Tweet .

Source (énfasis es mío)

Sólo tiene que llamar con result_type=popular y comprobar el nodo recent_retweets para ver lo popular que es. result_type=popularwill become the default en una versión actualizada, así que ten cuidado si omites este parámetro.

Los resultados con tweets populares no se ordenan cronológicamente. *

Si desea tener siempre resultados para mostrar, use result_type=mixed: tendrán el result_type en la sección "metadatos" con un valor de "reciente", y los resultados populares tendrán "popular". Una pequeña referencia sobre result_types:

mixtos: incluyen tanto los resultados en tiempo populares y reales en la respuesta.

reciente: devolver sólo los resultados más recientes en la respuesta

populares: devolver sólo los resultados más populares en la respuesta.

Si una consulta de búsqueda tiene resultados populares, los devolverá en la parte superior, incluso si son más antiguos que los otros resultados. *

* [Twitter API Announcements]

+0

ASÍ QUE no hay forma de clasificar los resultados por cuántas veces han sido retuiteados, ¿no? Popular tweets aparte ... – ozke

+0

@ozke: Al recibir los datos como json, puede convertirlos usando json_decode http://br.php.net/manual/en/function.json-decode.php y ordenar usted mismo de la manera que desee . – GmonC

+0

Pero la cantidad de retweets variable solo aparece en aquellos marcados por tweeter como populares, ¿no es así? Si un tweet tiene 2 o 3 retweets, no sabrá. ¿Estoy en lo cierto? – ozke

2

Esto no es un método de programación, sino que trabaja en el navegador con una extensión de Chrome (HackyBird):

  • Instalar el extension
  • Buscar una frase p.ej #Social (twitter.com/search?q=%23Social)
  • Haga clic en la extensión para ordenarla (puede ajustar la proporción de retweets/me gusta utilizados para ordenar en las opciones de extensión).

P.S. También clasificará la línea de tiempo de tu o cualquier otro usuario.

Cuestiones relacionadas