从Tumblr API的结果中遗漏了Tumblr粉丝

时间:2012-08-27 12:51:40

标签: api tumblr

我使用下面的代码来获取特定用户的关注者。但有些时候,一些tumblr博客没有在回复中显示出来。

$oauth = new OAuth($conskey,$conssec);
$oauth->fetch("http://api.tumblr.com/v2/user/following", array('offset'=>0) ,OAUTH_HTTP_METHOD_GET);
$following_list = json_decode($oauth->getLastResponse());

我不确定这些博客是否对他们的设置做了些什么,使得它们在API请求的响应中不可见。

有人遇到Tumblr API请求的这类问题吗?我如何解决这个问题,以便查看完整的关注者列表?

提前谢谢。

2 个答案:

答案 0 :(得分:1)

你的意思是你可以让数组返回类似

的内容

[回复] => stdClass对象

    (
        [total_blogs] => 29
        [blogs] => Array
            (
                [0] => stdClass Object
                    (
                        [name] => papertissue
                        [url] => http://papertissue.tumblr.com/
                        [updated] => 1360904405
                    )

                [1] => stdClass Object
                    (
                        [name] => lunchbagart
                        [url] => http://lunchbagart.tumblr.com/
                        [updated] => 1361159341
                    )

                [2] => stdClass Object
                    (
                        [name] => pacegallery
                        [url] => http://pacegallery.tumblr.com/
                        [updated] => 1360951263
                    )

                ...

                [19] => stdClass Object
                    (
                        [name] => rulesformyunbornson
                        [url] => http://rulesformyunbornson.tumblr.com/
                        [updated] => 1360770089
                    )

            )
  ) 

你只能看到20个回复吗?您需要使用offset命令再次运行该命令,并告诉它从post 21开始

喜欢这个用户/关注/?offset = 21

基本上你可以取total_blogs的值并除以20以找到运行命令的次数(例如在for循环中),并且每次增加偏移量20以得到完整的列表。 / p>

请告诉我这是否有所帮助,或者您的其他意思。

答案 1 :(得分:1)

我做了同样的事情,并注意到我的追随者也被过度计算了。我也给Tumblr支持发了一封电子邮件,但他们还没有回复我。

要知道真实的数字,您可以随时计算并重复计算。我很懒(读作:开发人员),只有一个Ruby脚本可以帮我。