Replies to a particular tweet, Twitter API

后端 未结 11 2013
北荒
北荒 2020-11-28 02:19

Is there a way in the Twitter API to get the replies to a particular tweet? Thanks

相关标签:
11条回答
  • 2020-11-28 02:47

    Here I am sharing simple R code to fetch reply of specific tweet

    userName = "SrBachchan"
    
    ##fetch tweets from @userName timeline
    tweets = userTimeline(userName,n = 1)
    
    ## converting tweets list to DataFrame  
    tweets <- twListToDF(tweets)  
    
    ## building queryString to fetch retweets 
    queryString = paste0("to:",userName)
    
    ## retrieving tweet ID for which reply is to be fetched 
    Id = tweets[1,"id"]  
    
    ## fetching all the reply to userName
    rply = searchTwitter(queryString, sinceID = Id) 
    rply = twListToDF(rply)
    
    ## eliminate all the reply other then reply to required tweet Id  
    rply = rply[!rply$replyToSID > Id,]
    rply = rply[!rply$replyToSID < Id,]
    rply = rply[complete.cases(rply[,"replyToSID"]),]
    
    ## now rply DataFrame contains all the required replies.
    
    0 讨论(0)
  • 2020-11-28 02:51

    I came across the same issue a few months ago at work, as I was previously using their related_tweets endpoint in REST V1.

    So I had to create a workaround, which I have documented here:
    http://adriancrepaz.com/twitter_conversations_api Mirror - Github fork

    This class should do exactly what you want. It scrapes the HTML of the mobile site, and parses a conversation. I've used it for a while and it seems very reliable.

    To fetch a conversation...

    Request

    <?php
    
    require_once 'acTwitterConversation.php';
    
    $twitter = new acTwitterConversation;
    $conversation = $twitter->fetchConversion(324215761998594048);
    print_r($conversation);
    
    ?>
    

    Response

    Array
    (
        [error] => false
        [tweets] => Array
            (
                [0] => Array
                    (
                        [id] => 324214451756728320
                        [state] => before
                        [username] => facebook
                        [name] => Facebook
                        [content] => Facebook for iOS v6.0 ? Now with chat heads and stickers in private messages, and a more beautiful News Feed on iPad itunes.apple.com/us/app/faceboo?
                        [date] => 16 Apr
                        [images] => Array
                            (
                                [thumbnail] => https://pbs.twimg.com/profile_images/3513354941/24aaffa670e634a7da9a087bfa83abe6_normal.png
                                [large] => https://pbs.twimg.com/profile_images/3513354941/24aaffa670e634a7da9a087bfa83abe6.png
                            )
                    )
    
                [1] => Array
                    (
                        [id] => 324214861728989184
                        [state] => before
                        [username] => michaelschultz
                        [name] => Michael Schultz
                        [content] => @facebook good April Fools joke Facebook?.chat hasn?t changed. No new features.
                        [date] => 16 Apr
                        [images] => Array
                            (
                                [thumbnail] => https://pbs.twimg.com/profile_images/414193649073668096/dbIUerA8_normal.jpeg
                                [large] => https://pbs.twimg.com/profile_images/414193649073668096/dbIUerA8.jpeg
                            )
                    )
                 ....             
            )
    )
    
    0 讨论(0)
  • 2020-11-28 02:53

    I've implemented this in the following way:

    1) statuses/update returns id of the last status (if include_entities is true) 2) Then you can request statuses/mentions and filter the result by in_reply_to_status_id. The latter should be equal to the particular id from step 1

    0 讨论(0)
  • 2020-11-28 02:57

    Not in an easy pragmatic way. There is an feature request in for it:

    http://code.google.com/p/twitter-api/issues/detail?id=142

    There are a couple of third-party websites that provide APIs but they often miss statuses.

    0 讨论(0)
  • 2020-11-28 02:59

    Here is my solution. It utilizes Abraham's Twitter Oauth PHP library: https://github.com/abraham/twitteroauth

    It requires you to know the Twitter user's screen_name attribute as well as the id_str attribute of the tweet in question. This way, you can get an arbitrary conversation feed from any arbitrary user's tweet:

    *UPDATE: Refreshed code to reflect object access vs array access:

    function get_conversation($id_str, $screen_name, $return_type = 'json', $count = 100, $result_type = 'mixed', $include_entities = true) {
    
         $params = array(
              'q' => 'to:' . $screen_name, // no need to urlencode this!
              'count' => $count,
              'result_type' => $result_type,
              'include_entities' => $include_entities,
              'since_id' => $id_str
         );
    
         $feed = $connection->get('search/tweets', $params);
    
         $comments = array();
    
         for ($index = 0; $index < count($feed->statuses); $index++) {
              if ($feed->statuses[$index]->in_reply_to_status_id_str == $id_str) {
                   array_push($comments, $feed->statuses[$index]);
              }
         }
    
         switch ($return_type) {
         case 'array':
              return $comments;
              break;
         case 'json':
         default:
              return json_encode($comments);
              break;
         }
    
    }
    
    0 讨论(0)
  • 2020-11-28 02:59

    Twitter has an undocumented api called related_results. It will give you replies for the specified tweet id. Not sure how reliable it is as its experimental, however this is the same api call that is called on twitter web.

    Use at your own risk. :)

    https://api.twitter.com/1/related_results/show/172019363942117377.json?include_entities=1
    

    For more info, check out this discussion on dev.twitter: https://dev.twitter.com/discussions/293

    0 讨论(0)
提交回复
热议问题