R - 监控非常冗长的POST / GET请求的进度?

时间:2015-06-27 14:15:10

标签: json r post

我正在尝试使用httr包将许多地址转换为纬度/经度,所以我从datasciencetoolkit.org下载了地图数据,现在我在“http://localhost:8080/street2coordinates向本地服务器提交了一个相当长的POST / GET请求“

以下是相关代码:

library(httr)
data2 <- paste0("[",paste(paste0("\"",data$address,"\""),collapse=","),"]")
url  <- "http://localhost:8080/street2coordinates"
response <- POST(url,body=data2)
json     <- fromJSON(content(response,type="text"))

例如,data2中包含大约100,000个地址。有没有办法监控已经发送了多少请求,因为正在处理请求,以便我可以知道它何时完成?

谢谢!

1 个答案:

答案 0 :(得分:0)

我假设您正在使用httr套餐(如果您使用,请将此问题添加到您的问题中)。在任何情况下,您都可以通过progress()作为GETPOST的参数提供上传和下载的进度条:

data2 <- toJSON(data$address)
url  <- "http://localhost:8080/street2coordinates"
response <- POST(url, config = progress(), body = data2)
json     <- fromJSON(content(response, type = "text"))

如果你想要对标准进度条执行不同的操作,可以查看progress的代码,看看它是否创建了一组这样的配置参数(注意类型可以是"up""down"或默认c("up", "down")

config(noprogress = FALSE, progressfunction = progress_bar(type))

您可以依次查看httr:::progress_bar代码,了解其工作原理,并根据需要编写自己的代码。