【发布时间】:2022-01-19 22:50:46
【问题描述】:
我正在尝试使用 R 中的 RCurl 包访问以下 http 天气数据目录:
http://ncei.noaa.gov/data/global-summary-of-the-day/access/
在每年的每个目录中都有一个独特的气象站列表。
我可以像这样访问任何特定的数据集
url = 'http://ncei.noaa.gov/data/global-summary-of-the-day/access/1932/03005099999.csv'
data = read.csv(url)
但是,如果不知道每个目录中有哪些文件,我就无法自动执行此过程。我尝试使用 RCurl 包来获取其中所有文件的列表,但总是出错:
url = 'http://ncei.noaa.gov/data/global-summary-of-the-day/access/'
getURL(url)
这给了我以下输出,说明地址已更改(更改为 https 地址)
[1] "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n<html><head>\n<title>301 Moved Permanently</title>\n</head><body>\n<h1>Moved Permanently</h1>\n<p>The document has moved <a href=\"https://ncei.noaa.gov/data/global-summary-of-the-day/access/\">here</a>.</p>\n</body></html>\n"
将地址更改为指示的 https url 会出现此错误
url = 'https://ncei.noaa.gov/data/global-summary-of-the-day/access/'
getURL(url)
Error in function (type, msg, asError = TRUE) : error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version
我尝试将 https: 替换为 ftps: 和 ftp: 这样做会给我一个超时错误。
对打印目录有什么想法吗?
【问题讨论】: