Twitter搜索API相关性

时间:2017-11-25 11:19:46

标签: php api twitter

我构建一个在每小时cron作业上运行的PHP脚本,以查找包含特定主题标签的任何用户的推文。然后我将API发现的推文保存在数据库中。这些推文来自参与简单比赛的人,他们应该在比赛中发布有关比赛的创意并使用标签。

到目前为止,我的脚本非常简单,似乎有效(使用Abraham\TwitterOAuth):

$connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, 
$access_token, $access_token_secret);

$json = $connection->get("search/tweets", ["q" => 'contesthashtag', 
"result_type" => "recent", "count" => 100, "tweet_mode" => "extended"]);

if($json!=null && $json->statuses && $json->statuses!=null && is_array($json->statuses) && count($json->statuses)>0)
  {
    foreach($json->statuses as $tweet)
    {
      if($tweet->in_reply_to_status_id==null && $tweet->in_reply_to_user_id==null && $tweet->in_reply_to_screen_name==null)
      {
        echo "<tr>
          <td>".$tweet->id_str."</td>
          <td>".$tweet->created_at."</td>
          <td>".$tweet->user->name."</td>
          <td>".$tweet->user->screen_name."</td>
          <td>".$tweet->full_text."</td>
        </tr>";
      }
    }
  }

无论如何,reading the Twitter Search API docs,我注意到了一些事情:

  

在深入研究之前,重要的是要知道标准搜索API关注的是相关性而非完整性。这意味着搜索结果中可能缺少某些推文和用户。

这是否意味着可能找不到一些带有我正在寻找的#标签的推文?这里的relevance是什么?这是否意味着拥有少量粉丝的用户不会出现在结果中?

我真的不需要获得超过几个小时的推文,但确实需要确保我得到所有推文,以便没有人不参加比赛。

0 个答案:

没有答案