在查询纽约时报文章搜索API时,奇数页面上的结果不佳

时间:2014-04-30 19:57:45

标签: python while-loop iteration

我正在尝试使用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)

0 个答案:

没有答案