是否可以在不实际下载网站内容的情况下查看其状态?

时间:2020-06-17 15:28:28

标签: r http url get ratelimit

我使用以下函数从API获取一些内容。这里的问题是,存在一个速率限制,通常在检查URL时会超过该速率限制。因此,我想知道是否存在另一种无需打开URL即可检查URL的方法。

Updated <- function(x){http_error(GET(x))}

对不起,没有真正的方法可以产生好的样本

1 个答案:

答案 0 :(得分:2)

这个问题真好,有时可能很有用!也许您可以尝试运行curlGetHeaders()函数。它位于R基座中,因此您无需安装任何软件包。只需输入:

curlGetHeaders("https://stackoverflow.com/")

这应该只询问HTTP标头,而不询问内容(就像运行命令行curl -I一样),因此它可能会绕过您的速率限制(但也可能不会,这取决于API提供程序和您需要先尝试一下。

如果要获取HTTP状态,只需运行:

# get all HTTP headers
headers <- curlGetHeaders("https://stackoverflow.com/")

# get HTTP status code
http_status <- attributes(headers)$status
#> http_status
# [1] 200

# or full status header
headers[1]
# [1] "HTTP/1.1 200 OK\r\n"

有关更多信息,请参见documentation或在您的R控制台中键入?curlGetHeaders

希望这会有所帮助!