这可能是我个人的一个根本误解,但我认为purrr::safely()
捕获了所有错误并且从未失败过。然而:
> purrr::safely(httr::GET('http://revolution-news.com/'))
Error in curl::curl_fetch_memory(url, handle = handle) :
Couldn't resolve host name
答案 0 :(得分:4)
safely
是函数包装器,而不是函数调用包装器。使用
purrr::safely(httr::GET)('http://revolution-news.com/')
注意它如何包装函数GET()
,而不是调用get。你可以把它分开来
safe_GET <- purrr::safely(httr::GET)
safe_GET('http://revolution-news.com/')