【发布时间】:2017-10-27 09:54:10
【问题描述】:
如何从基础包中的url函数增加超时时间?
我正在尝试:
options(timeout = 200)
url( Link, open = "r" , timeout = getOption("timeout"))
但是不行,超时时间一样,返回下一个错误:
InternetOpenUrl failed: 'the operation timed out'
该链接激活了一个需要一些时间的过程,我想避免该错误消息以获取日志。我也尝试了带有函数 geturl 的 RCurl 包,但它不适合这种情况,因为它在 base::url 不需要时要求凭据。
我正在运行 R 版本 3.4.1。提前致谢!
【问题讨论】:
-
你也可以试试
httr! -
它也要求提供凭据。出于安全原因,您需要用户名和密码,但在我的计算机中的浏览器中我不需要介绍它。这就是为什么 RCurl 或 httr 失败,但 base::url 没有。超时是个问题
-
您可以使用
httr传递凭据。我不认为你完全理解发生了什么。 -
是的,但是,添加密码或用户并不完全是问题,它会自动进入我的计算机。看起来当它请求主机请求对页面进行验证时,它返回一个 NULL ,因此访问被拒绝。这是一个信息问题,我不明白为什么会发生。使用 base::url 我没有这个问题,但是超时是不够的。如果我在浏览器中引入 url 它工作正常,我只是想用 R 自动化它,因为它是脚本的一部分,将使用其中的一些信息。网页根据链接中包含的参数将一些数据加载到数据库中
标签: r