我真的不知道如何在Twitter的API中使用 Curesor 参数,例如 - here。 我应该为每100个粉丝打一个新的API调用吗?
如果有人可以提供一个PHP示例来获取完整的关注者列表,假设我有超过100个,我会喜欢它。
提前致谢!
答案 0 :(得分:2)
您需要将游标值传递回API以获取关注者的下一个“块”。然后从该块中获取游标参数并将其传回以获取下一个块。这就像是“获取下一页”机制。
答案 1 :(得分:1)
尽管你前一段时间问过这个问题,但我希望这将是更准确的答案。
«这对你来说效率可能更低,但更有效率 对我们来说。»Twitter Staff
<强> BUT ... 强> 之前有人在断开的链接中询问«游标是否存在?似乎答案是“是”»
这意味着你可以在0之前保存你的最后一个光标并在下次继续它。
答案 2 :(得分:0)
查看http://code.google.com/p/twitter-boot/source/browse/trunk/twitter-bot.php
foreach ($this->twitter->getFollowers(,0 ) as $follower)//the 0 is the page
{
if ($this->twitter->existsFriendship($this->user, $follower['screen_name'])) //If You Follow this user
continue; //no need to follow now;
try
{
$this->twitter->createFriendship($follower['screen_name'], true); // If you dont Follow Followit now
$this->logger->debug('Following new follower: '.$follower['screen_name']);
}
catch (Exception $e)
{
$this->logger->debug("Skipping:".$follower['screen_name']." ".$e->getMessage());
}
}
}
答案 3 :(得分:0)
自从提出这个问题以来,Twitter API已经在很多方面发生了变化。
Cursor用于对API响应进行分页,结果很多。例如,获取关注者的单个API调用将检索最多5000个ID。
如果您想获得用户的所有关注者,您必须进行新的API调用,但这次您必须指出第一个响应中的“next_cursor”数字。
如果它有用,下面的python代码将从给定用户检索关注者。
它将检索由常量指示的最大页面。
小心不要被禁止(即:匿名电话不要超过150次api电话/小时)
import requests
import json
import sys
screen_name = sys.argv[1]
max_pages = 5
next_cursor = -1
followers_ids = []
for i in range(0,max_pages):
url = 'https://api.twitter.com/1/followers/ids.json?screen_name=%s&cursor=%s' % (screen_name, next_cursor)
content = requests.get(url).content
data = json.loads(content)
next_cursor = data['next_cursor']
followers_ids.extend(data['ids'])
print "%s have %s followers!" % (screen_name, str(len(followers_ids)))