【发布时间】:2018-05-27 18:50:50
【问题描述】:
当我进行一些网页抓取(使用 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
这是否意味着当我进行网络抓取时,我应该在最后以某种方式调用一个函数来关闭连接?
我已经阅读了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
【问题讨论】:
-
上......有人吗?
-
.......?
标签: r web-scraping