Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
循环中的R错误:文件(con,“R”和open.connection(con,“rb”)_R_Loops_Jsonlite_Rjsonio - Fatal编程技术网

循环中的R错误:文件(con,“R”和open.connection(con,“rb”)

循环中的R错误:文件(con,“R”和open.connection(con,“rb”),r,loops,jsonlite,rjsonio,R,Loops,Jsonlite,Rjsonio,我正在下载一系列的URL,这些URL是JSON文件,并将其下载到一个列表列表中,稍后进行分析 baseurl <- "http://zoeken.kvk.nl/Address.ashx?site=handelsregister&partialfields=&q=010" pages <- list() for(i in 1:99999){ if(i < 10000){ message("ignoring pa

我正在下载一系列的URL,这些URL是JSON文件,并将其下载到一个列表列表中,稍后进行分析

    baseurl <- "http://zoeken.kvk.nl/Address.ashx?site=handelsregister&partialfields=&q=010"
    pages <- list()

    for(i in 1:99999){
      if(i < 10000){
        message("ignoring page ", i)
      }
      if(i >= 10000){
        message("Retrieving page ", i)
        mydata <- RJSONIO::fromJSON(paste0(baseurl,i), flatten=TRUE) 

        pages[[i+1]] <- mydata$resultatenHR
# adding adjustment 1
        options(timeout = 4000000)
# adding adjustment 2
        if(i %% 100 == 0){Sys.sleep(2)}
        if(i %% 1000 == 0){Sys.sleep(10)}
      }

    }

我首先尝试了上面提到的调整1,然后是调整2,但问题不断出现。 如果我尝试在错误点重新启动循环,它将再次工作,直到出现以下不规则错误

我如何构建R在错误点自动重新启动循环

注意:我在open.connection中看到了关于错误的其他主题,但我不理解给出的答案,或者它不适用于我认为的代码类型

NB2:我也尝试过使用
jsonlite
包,而不是
RJSONIO
,但在不规则的时刻,它会产生同样的错误。
谢谢你的意见。

我几乎有同样的问题。尤其是当我试图下载更大的数据集时。我收到这样一条错误消息:“打开连接时出错(con,“rb”):发送失败:连接被重置”

最终结果
error in open.connection(con, "rb") : Recv failure: Connection was reset. 
Error in file(con, "r") : cannot open the connection
  final_results <- list()

  while(i < number){
      query <- paste0(url_start, i)
      json_result <- fromJSON(query)
      final_results[[i]] <- as.data.frame(json_result$records)
      i <- i+1
  }