我遇到R.utils::withTimeout()
的一些问题。它似乎根本没有将超时选项纳入帐户,或者仅有时。在我想要使用的功能下面:
scrape_player <- function(url, time){
raw_html <- tryCatch({
R.utils::withTimeout({
RCurl::getURL(url)
},
timeout = time, onTimeout = "warning")}
)
html_page <- xml2::read_html(raw_html)
}
现在我使用它时:
scrape_player("http://nhlnumbers.com/player_stats/1", 1)
它可以正常工作,我得到我想要的html页面,或者我收到一条错误消息,告诉我已达到已用时限,或者,这是我的问题,需要很长时间,比1秒,最后返回一个错误500的html页面。
RCurl::getURL()
不应该只尝试1秒(在示例中)获取html页面,如果没有,只需返回警告?我错过了什么?
答案 0 :(得分:0)
好的,我做了一个解决方法:而不是返回页面,我把它写到磁盘上。没有解决withTimeout似乎不起作用的问题,但至少我看到我正在慢慢但肯定地将页面写入磁盘。