我正在尝试使用PHP创建一个简单的关注和取消关注twitter bot。
我找到了几个代码spinets,我认为可以让我开始。
代码可以在这里喜欢:
PHP TWITTER bot to follow/unfollow using api version 1.1 and cursors
我尝试使用此代码:
<?php
require("twitteroauth/twitteroauth.php");
$oTwitter = new TwitterOAuth
( 'YOUR_TWITTER_APP_CONSUMER_KEY',
'YOUR_TWITTER_APP_CONSUMER_SECRET',
'YOUR_TWITTER_APP_OAUTH_TOKEN',
'YOUR_TWITTER_APP_OAUTH_SECRET');
$e = 1;
$cursor = -1;
$full_followers = array();
do {
$follows = $oTwitter->get("followers/ids.json?screen_name=myusername&cursor=".$cursor);
$foll_array = (array)$follows;
foreach ($foll_array['ids'] as $key => $val) {
$full_followers[$e] = $val;
$e++;
}
$cursor = $follows->next_cursor;
} while ($cursor > 0);
echo "Number of following:" .$e. "<br /><br />";
?>
但是,上面的代码会返回:
Number of following:1
但我有超过800名追随者和超过1000名粉丝!
所以这个数字在php中显示错误!
有人可以就此问题提出建议吗?
任何帮助将不胜感激。
答案 0 :(得分:1)
一旦你以json格式得到结果,你必须使用json_decode
,否则你的$foll_array
将只包含一个字符串(即json字符串)。它应该是这样的:
$e = 1;
$cursor = -1;
$full_followers = array();
do {
$follows = $oTwitter->get("followers/ids.json?screen_name=myusername&cursor=".$cursor);
$foll_array = json_decode($follows);
foreach($foll_array as $key => $val) {
if($key == 'ids')
{
foreach($val as $id)
{
$full_followers[$e] = $id;
$e++;
}
}
}
$cursor = $foll_array->next_cursor;
} while ($cursor > 0);
答案 1 :(得分:0)
试试看你是否收到推特错误。这意味着你至少要连接。
if (isset($follows->errors)) {
print_r($follows->errors[0]->message);
} else {
print_r($follows);
}
exit;
如果连接数据没有问题