使用Meetup API,我能够成功地从任何给定的组中获得200个成员。有很多团体拥有比这更多的成员。我想知道如何把它们全部搞定。
问题
我无法找到记录&page=###
的位置。我假设它设置了Meetup响应中返回的结果数量。
我曾尝试使用&page=1000
,但我仍然只能让200名成员回来。
请求网址
我正在使用此URL来请求数据:
let meetupReqUrl = "https://api.meetup.com/2/members?&sign=true&group_id="
+ groupId
+ "&key="
+ apiKeys.meetup
+ "&order=joined"
+ "&page=1000"
此变体也准确地返回200个成员:
let meetupReqUrl = "https://api.meetup.com/2/members?&sign=true&group_id="
+ groupId
+ "&order=joined"
+ "&page=1000"
+ "&key="
+ apiKeys.meetup
值得注意的是&order=joined
根本没有对结果进行排序。这让我相信我在形成URL时做错了。
相关文档
Meetup的/2/members
API为documented here。
答案 0 :(得分:2)
您通过API 一次的最大结果数似乎是200 - 请参阅https://github.com/jkutianski/meetup-api/wiki#limits。
然而,您可以根据http://www.meetup.com/meetup_api/#making_request发出多个请求。它说你需要使用页面和偏移参数。来自meetup.com链接:
页面 - 用于结果的页面大小(每个响应中的最大结果数)
offset - 要返回的结果的起始页。例如,当page = 10时,指定" offset = 0"将带回记录1-10," offset = 1"将带来11-20等记录
答案 1 :(得分:0)
(我再次回答是因为我没有足够的声誉来编辑我以前的答案,因为它已经变成评论了。)
offset
和page
的工作方式不是那么直观。他们实际上是相互依存和相乘的。例如,如果page
设置为20,而offset
为2,则将跳过40个条目。我使用API console来解决这个问题,因为找不到任何指定其关系的文档。
这也解释了为什么偏移不能单独起作用。
答案 2 :(得分:0)
请注意,如果将订单设置为时间,则偏移量将不起作用。 order=time
。
另外,如果您按时间排序响应,则会减少返回结果的数量(大约80%),因此,如果您设置page=20
,则会收到大约16个结果。