0
我有一個函數,它接受兩個參數,組裝一個URL並提交一個GET請求。我給函數提供了一個參數列表(每個記錄有一對參數),所有事情都恢復正常。如何在URL獲取請求之間暫停?
但是,我想確保我一次只發送一個請求。結果回來如此之快,以至於我不確定我是否在琢磨他們的服務器。
下面是我得到了什麼(DF是25行的數據幀,所以我提交在這種情況下,25個請求):
library(RCurl)
block <- function(latty, longy){
url <- paste0("http://data.fcc.gov/api/block/2010/find?latitude=", latty, "&longitude=", longy)
response <- getURL(url)
blockID <- substr(sub(".*Block FIPS=\\\"","",response), 0, 15)
return(blockID)
Sys.sleep(0.25)
}
result <- do.call(block, list(latty=df$lat, longy=df$long))
當我運行此腳本,它被洪水與服務器請求,還是在Sys.sleep速度中逐步通過它們?
由於之前!我的函數調用(do.call)一次提交一對參數嗎?也就是說,它是否提交一對,等待迴應,然後提交下一對? – Phoebe
@ user1252489也許你應該使用'mapply'來代替? –
@ user1252489更新答案 –