“open.connection(x,”rb“)出错:达到了超时”

时间:2017-12-13 19:11:07

标签: r web-scraping

当我进行一些webscraping(使用for循环删除多个页面)时,有时,在抓取40页中的第35页后,我有以下错误:

  

“open.connection(x,”rb“)出错:达到超时”

有时我还会收到这条消息:

  

“另外:警告消息:关闭未使用的连接3”

在我想澄清的事项清单下面:

1)我已经读过它可能需要明确定义用户代理。我试过这个:

read_html(curl('www.link.com', handle = curl::new_handle("useragent" = "Mozilla/5.0")))

但它没有改变任何东西。

2)我注意到当我打开VPN并更改位置时,有时我的抓取工作没有任何错误。我想明白为什么?

3)我也读过它可能取决于代理。怎么想了解如何以及为什么?

4)除了我所遇到的错误之外,我想了解这个警告,是否有可能导致理解错误的线索:

  

警告消息:关闭未使用的连接3

这是否意味着当我进行webscraping时,我应该以某种方式调用函数来关闭连接?

我已经在stackoverflow上阅读了以下帖子,但没有明确的解决方案:

Iterating rvest scrape function gives: "Error in open.connection(x, "rb") : Timeout was reached"

rvest Error in open.connection(x, "rb") : Timeout was reached

Error in open.connection(x, "rb") : Couldn't connect to server

1 个答案:

答案 0 :(得分:1)

您尝试过吗?

https://stackoverflow.com/a/38463559

library(rvest)
url = "http://google.com"
download.file(url, destfile = "scrapedpage.html", quiet=TRUE)
content <- read_html("scrapedpage.html")