我正在编写一个小python应用程序来获取给定tumblr的关注者,我想我可能在分页逻辑中发现了一个错误。
我正在测试的tumblr有593个关注者,我知道API限制为每次调用20次。身份验证成功后,获取逻辑如下所示:
offset = 0
while True:
response = client.followers(blog, limit=20, offset=offset)
bunch = len(response["users"])
if bunch == 0:
break
j = 0
while j < bunch:
print response["users"][j]["name"]
j = j + 1
offset += bunch
我观察到的是,在第三次使用offset=40
调用API时,列表中返回的第一个名称是我在上一组中看到的名称。它实际上是第38个名字。这种行为(看到我之前见过的一个或多个名字)从那一点开始随机重复,但不是每次调用API。有些电话给我一个新的20个名字。它可以在多次测试运行中重复。我看到它们的顺序与Tumblr网站上的顺序相同,我只看到其中很多次。
一个有趣的巧合是,返回的非独特粉丝的总数与&#34;粉丝#34; count表示博客本身(593)。但其中只有516个是独一无二的。
对于它的价值,在Tumblr的控制台页面上运行查询会返回相同的结果,无论我选择哪种语言,所以我不倾向于认为这是一个错误。 PyTumblr客户端,但在API级别更低。
有什么想法吗?