2009-11-23 51 views
2

我真的不知道如何在Twitter的API中使用Curesor参数,例如 - here。 我应该为每100个关注者创建一个新的API调用吗?了解Twitter API的“光标”参数

我喜欢它,如果有人可以提供获得追随者的完整列表,假设我有100多家PHP的例子...

提前感谢!

回答

2

您需要将光标值传递回API以获取下一个“块”的关注者。然后,您从该块取出游标参数并将其传回以获取下一个块。这就像是“获得下一页”机制。

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()); 
     } 

    } 

    } 
+0

这个代码是关于建立友谊不是检索跟随列出 – 2009-11-23 21:20:08

+0

读码$这个 - > twitter-> getFollowers()将返回一个数组, 上面就是一个例子你可以用数组 – streetparade 2009-11-23 21:27:56

+0

做,那么你需要此文件中的定义: http://code.google.com/p/twitter-boot/source/browse/trunk/inc/twitter.php – 2009-11-23 21:38:53

0

因为这个问题被问,Twitter的API已经在许多方面改变。

光标用于为许多结果分类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))) 
1

,我希望这将是更积极回答。

  1. Twitter不提供有关next_cursor的含义的信息。只有how cursor works
  2. 这只是Twitter管理分页的一个简单方法。
  3. «该功能的目的是线性使用,一个光标定在每个用户的时间。»Source

«这是潜在的低效率的你,但我们更有效 。»Twitter Staff

但是...以前 有人问断开的链接«是游标persistents?似乎答案是“是”»

这意味着您可以将最后一个光标保存在0之前并在下次继续。