簡體   English   中英

Twitter API-如何在過去24小時內按主題標簽計算推文?

[英]Twitter API - How to count Tweets by hashtag in last 24 hours?

我嘗試使用Twitter API,我想計算過去24小時內有特殊標簽在Twitter上發布的推文數量。

我真的找不到辦法嗎? 好像限制為100個?

為了在我的網站上設置一些統計信息,我需要獲取過去24小時內的推文數量。

當前代碼:

<?php
ini_set('display_errors', 1);
require_once('TwitterAPIClass/TwitterAPIExchange.php');

/** Set access tokens here - see: https://dev.twitter.com/apps/ **/
$settings = array(
    'oauth_access_token' => "XXXX",
    'oauth_access_token_secret' => "YYYY",
    'consumer_key' => "XXXX",
    'consumer_secret' => "YYYY"
);    

/** Perform a GET request and echo the response **/
/** Note: Set the GET field BEFORE calling buildOauth(); **/
$url = 'https://stream.twitter.com/1.1/statuses/filter.json';
$getfield = '?track=%23beer';
$requestMethod = 'GET';
$twitter = new TwitterAPIExchange($settings);
$twitter_data = json_decode($twitter->setGetfield($getfield)->buildOauth($url, $requestMethod)->performRequest(), true);

foreach($twitter_data['statuses'] as $tweets) {
    echo $tweets['created_at'] . '<br>';

}            
?>

這可能不是一個完美的答案,但我假設您的假設是正確的。 Twitter REST API已經表明了這一點。 (我知道您正在使用Stream API,但讓我解釋一下)。

由於Twitter API均遵循API開發人員自己設置的一般規則,因此我假設Stream API遵循與REST API相同的規定。 GET搜索/推文的文檔指出(參數: count ),返回的推文數量限制為100。即使流和REST API之間沒有明顯的聯系,即使文檔中未對此進行描述,但我d表示,這就是數組中只有100個元素的原因。

如果可能,您可以運行一個腳本,該腳本以一定的間隔將請求發送到服務器,然后將各個tweet保存在數據庫/文本文件/任何文件中。 由於將請求頻率的規則設置為每15分鍾15次或每15分鍾180次,因此這是一種解決方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM