我正在尝试使用New York Times' Article Search API v 2进行搜索。 API的工作方式,对于结果超过10的查询,结果将分为多个页面,您必须单独请求每个页面。例如,要获得结果1-10,请在请求中包含“page = 0”。对于结果1-11,它是“page = 1”,依此类推。
我想抓住所有结果。 (在我正在测试的查询中,有147.)以下代码仅适用于EVEN-NUMBERED页面。因此,当计数为0,2,4时,它会返回结果。在奇数编号的请求中,它似乎成功查询API - 它返回“状态”:“确定”值 - 但是“文档”列表“通常存储结果的地方是空的。
我不能为我的生活找出原因。有什么想法吗?
from nytimesarticle import articleAPI
import time
#initialize API
api = articleAPI(API_key)
#conduct search
def custom_search(page_number):
articles = api.search( q = query, page = page_number)
return articles
count = 0
while True:
#get first set of articles
articles = custom_search(count)
#print all the headlines
for article in articles['response']['docs']:
print "%s\nDate: %s\t%s\n" % (article['headline']['main'],
article['pub_date'], count)
#iterate the page number
count += 1
#pause to avoid rate limits
time.sleep(2)