2008-10-15 3 views
6

Me gustaría utilizar la API para devolver todos los tweets que coinciden con mi consulta de búsqueda, pero solo los tweets publicados en los últimos cinco segundos.¿Cómo puedo usar la API de búsqueda de Twitter para devolver todos los tweets que coinciden con mi consulta de búsqueda, publicados solo en los últimos cinco segundos?

Con la API de búsqueda de Twitter, puedo usar el since_id para captar todos los tweets de un ID específico. Sin embargo, realmente no puedo ver una buena manera de encontrar la ID del tweet para comenzar.

También sé que puede utilizar "desde:" en la consulta real para usar una fecha, pero no puede ingresar una hora.

¿Alguien con experiencia en Twitter API me puede ofrecer algún consejo? Gracias por leer y tu tiempo!

http://apiwiki.twitter.com/Search-API-Documentation

Respuesta

4

Esto suena como algo que puede hacer en su extremo, ya que created_at es uno de los campos devueltos en el conjunto de resultados. Solo haz tu consulta y solo usa las que están dentro de los últimos 5 segundos.

0

¿Estás tratando de sondear tweets en tiempo real? Does not twitter tiene un límite de API req/hora. Creo que golpearías eso bastante rápido.

+0

para la API de búsqueda. No hay límites de tarifas Me gustaría sondear el tuit superior cada cinco segundos. – rmh

+0

Existen límites de frecuencia para la API de búsqueda, pero nadie sabe cuáles son. Creo que 5 segundos están bien siempre y cuando no estés haciendo múltiples solicitudes concurrentes de API también. –

0

¿Por qué no haces una llamada a la API cada 5 segundos y tomas el primer tweet?

+0

Porque los ordena por popularidad, no por tiempo. Entonces, para la mayoría de las encuestas, no será un tweet diferente. – rmh

+1

Lo siento, me falta algo. Parece que está en orden cronológico: http://search.twitter.com/search.atom?q=microsoft – Kon

+0

¡Eso es tan extraño! Cuando estaba construyendo mis consultas no fue, por alguna razón. No puedo recordar lo que estaba haciendo. Está bien, gracias ... se siente tonto ahora. :) – rmh

2
 <script type="text/javascript" charset="utf-8"> 
    // JavaScript Document 
    $(document).ready(function(){ 

    // start twitter API  
    $.getJSON('http://twitter.com/status/user_timeline/YOUR_NAME.json?count=10&callback=?', function(data){ 
     $.each(data, function(index, item){ 
      $('#twitter').append('<div class="tweet"><p>' + item.text.linkify() + '</p><p><strong>' + relative_time(item.created_at) + '</strong></p></div>'); 
     }); 

    }); 


    function relative_time(time_value) { 
     var values = time_value.split(" "); 
     time_value = values[1] + " " + values[2] + ", " + values[5] + " " + values[3]; 
     var parsed_date = Date.parse(time_value); 
     var relative_to = (arguments.length > 1) ? arguments[1] : new Date(); 
     var delta = parseInt((relative_to.getTime() - parsed_date)/1000); 
     delta = delta + (relative_to.getTimezoneOffset() * 60); 

     var r = ''; 
     if (delta < 60) { 
     r = 'a minute ago'; 
     } else if(delta < 120) { 
     r = 'couple of minutes ago'; 
     } else if(delta < (45*60)) { 
     r = (parseInt(delta/60)).toString() + ' minutes ago'; 
     } else if(delta < (90*60)) { 
     r = 'an hour ago'; 
     } else if(delta < (24*60*60)) { 
     r = '' + (parseInt(delta/3600)).toString() + ' hours ago'; 
     } else if(delta < (48*60*60)) { 
     r = '1 day ago'; 
     } else { 
     r = (parseInt(delta/86400)).toString() + ' days ago'; 
     } 

     return r; 
    } 

    String.prototype.linkify = function() { 
     return this.replace(/[A-Za-z]+:\/\/[A-Za-z0-9-_]+\.[A-Za-z0-9-_:%&\?\/.=]+/, function(m) { 
      return m.link(m); 
     }); 
    };// end twitter API 




}); // ***** end functions ***** 
    </script> 

      <div id="twitter"> 
    Target Div      

    </div> 
0

Los resultados de la API de Twitter están ordenados por reciente de forma predeterminada. Por favor, vea la siguiente cita de Twitter wiki:

Parámetro de búsqueda de Twitter API:

result_type: Opcional. Especifica qué tipo de resultados de búsqueda preferiría recibir.

* Valid values include: 


     o mixed: In a future release this will become the default value. Include both popular and real time results in the response. 
     o recent: The current default value. Return only the most recent results in the response. 
     o popular: Return only the most popular results in the response. 
* Example: http://search.twitter.com/search.atom?q=Twitter&result_type=mixed 
* Example: http://search.twitter.com/search.json?q=twitterapi&result_type=popular 
* Example: http://search.twitter.com/search.atom?q=justin+bieber&result_type=recent 

Corríjome si me equivoco en cualquier parte.

Gracias y Saludos,
Abhay Dandekar

No
Cuestiones relacionadas