我是NYT API的新手,我似乎遇到了一些限速错误,尽管我没有接近每天10,000次通话的限制。实际上,为了安全起见,我在每次查询迭代中暂停两次不同的时间以便我平均每秒查询少于一次查询(API的最大值是每秒10次查询),所以我认为我的API调用应该是超级安全的规则立场。但是我的API调用每20次调用就会失败,所以给我这个:
Error in file(con, "r") : cannot open the connection
以下是我的代码,以防万一:
getData <- function(url){
raw.data <- readLines(url)
rd <- fromJSON(raw.data)
Sys.sleep(.2)
rd[[1]]$meta$hits
}
for(i in 1:length(target_urls_years))
{
print(i)
z = target_urls_years[[i]]
print(z)
holder <- NULL
for (j in z){
dat = getData(j)
holder <- rbind(holder,dat)
Sys.sleep(.5)
}
print(holder)
total_holder[[i]]= holder
}
我无法让循环运行 - 我不得不将其分解成段并一次运行几个。可能导致这种情况的任何想法?另外我可以在R中做什么,以便在这种情况下循环权限本身,所以我不必手动重新启动它?