用twitter user_timeline api获取用户的所有推文

时间:2015-03-12 19:42:52

标签: php twitter-bootstrap twitter

我使用twitter user_timeline api来获取用户的所有推文。

它在单个请求中返回200但问题是如果推文像400或500那么我想得到所有推文

下面是我的代码,在输出中提供200条推文:

require_once('TwitterAPIExchange.php');

$settings = array(
    'oauth_access_token' => "",
    'oauth_access_token_secret' => "",
    'consumer_key' => "",
    'consumer_secret' => ""
);
$requestMethod = 'GET';
$url1="https://api.twitter.com/1.1/statuses/user_timeline.json";

$sc_name = 'DailyRapPics';
$count ='700';

$getfield = '?screen_name='.$sc_name.'&exclude_replies=true&include_rts=true&contributor_details=false';

$twitter = new TwitterAPIExchange($settings);
$tweets  = $twitter->setGetfield($getfield)->buildOauth($url1, $requestMethod)->performRequest();

$tweetarray = json_decode($tweets);
$l = 0;
foreach($tweetarray as $mytweets){
$l++;
}
echo 'total values->>>>>>>>>'.$l;

当我看到twitter时,有像since_id,max_id

这样的字段

如何使用它来获取低于3200的Twitter限制的用户的所有推文请帮助我

1 个答案:

答案 0 :(得分:2)

使用Twitter API,每页最多可以获得200个帖子。您必须添加& page = x 才能从时间轴(限制为3200个帖子)获取推文

API文档:https://dev.twitter.com/docs/api/1/get/statuses/user_timeline

$getfield = '?screen_name='.$sc_name.'&exclude_replies=true&include_rts=true&contributor_details=false&page=2';

使用 page = 2 为下一页添加200多条推文:

C:\Projects\project1\.git\modules\plugins\tasks\config

你也可以使用for循环来获取时间线上的所有推文。您将能够循环16次,因此您可以获得3200条推文(最大值)。

希望得到这个帮助。