Comment puis-je utiliser l'API de recherche Twitter pour renvoyer tous les tweets correspondant à ma requête de recherche, publiés uniquement au cours des cinq dernières secondes?

StackOverflow https://stackoverflow.com/questions/206170

Question

J'aimerais utiliser l'API pour renvoyer tous les tweets correspondant à ma requête, mais uniquement les tweets publiés au cours des cinq dernières secondes.

Grâce à l'API de recherche de Twitter, je peux utiliser SinceDid pour récupérer tous les tweets d'un ID spécifique. Cependant, je ne vois pas vraiment comment trouver l'identifiant du tweet pour commencer.

Je suis également conscient du fait que vous pouvez utiliser " puisque: " dans la requête réelle pour utiliser une date, mais vous ne pouvez pas entrer une heure.

Quelqu'un avec l'expérience de l'API Twitter peut-il me donner des conseils? Merci de votre lecture et de votre temps!

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

Était-ce utile?

La solution

Cela ressemble à quelque chose que vous pouvez faire de votre côté, puisque created_at est l'un des champs retournés dans le jeu de résultats. Faites simplement votre recherche et utilisez uniquement celles qui se trouvent dans les 5 dernières secondes.

Autres conseils

        <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>

Essayez-vous d’interroger les tweets en temps réel? Twitter n'a-t-il pas une limite sur le temps requis pour l'API? Je pense que vous atteindriez ça assez vite.

Pourquoi ne vous contentez-vous pas d'appeler l'API toutes les 5 secondes pour récupérer le premier tweet?

Les résultats de l'API Twitter sont triés par défaut récemment. Veuillez consulter la citation suivante du twitter twitter:

Paramètre vers l'API de recherche Twitter:

type_résultat: facultatif. Spécifie le type de résultats de recherche que vous préférez recevoir.

* 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

S'il vous plaît, corrigez-moi si je me trompe n'importe où.

Merci et salutations,
Abhay Dandekar

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top