您也可以使用 Dataverse API 下载文件(或数据集),只要您知道其 PID。查看API documentation 中的“基本文件访问”部分。
请注意,在哈佛的 Dataverse 中,此 API 端点是开放的,无需身份验证。
如何获取您的文件
使用 curl,您可以提供一个永久标识符(在本例中为 DOI)来访问文件。你的文件有 DOI 10.7910/DVN/28075/K7L9Y8 所以使用
curl -L https://dataverse.harvard.edu/api/access/datafile/:persistentId/\?persistentId\=doi:10.7910/DVN/28075/K7L9Y8 --output events.2014.20160121105408.tab
下载您想要的文件。
关于文件位置的一些有趣的细节
上面的链接(以及网站的下载链接)并不直接指向数据文件。文件本身存储在一些 Amazon S3 云存储中。当使用-v 参数(并且没有 -L)运行 curl 时,您可以看到这一点:
curl -v https://dataverse.harvard.edu/api/access/datafile/:persistentId/\?persistentId\=doi:10.7910/DVN/28075/K7L9Y8
< HTTP/2 303
< date: Fri, 19 Nov 2021 16:50:00 GMT
< content-length: 0
< location: https://dvn-cloud.s3.amazonaws.com/10.7910/DVN/28075/15264f0277f-8738b46ba751[...very long URL that I shortened]
来自 Dataverse 的初始回复是 HTTP 303(请参阅其他),并且 location 条目指向文件的实际位置。将 -L 参数传递给 curl 会告诉它遵循此位置链接。
下载整个数据集
请注意,在您的情况下,您正在从数据集中下载单个文件。要下载整个数据集,您需要使用不同的 API 端点(基本上将 URL 中的 datafile 替换为 dataset)并使用正确的 DOI。对于您的数据集,文件和数据集 DOI 为:
10.7910/DVN/28075/K7L9Y8 File DOI
10.7910/DVN/28075 Dataset DOI
换句话说,来自数据集的文件会获得附加到数据集 DOI 的附加后缀元素。要下载整个数据集(小心,它是 1.5 GB),您可以使用:
curl -L https://dataverse.harvard.edu/api/access/dataset/:persistentId\?persistentId\=doi:10.7910/DVN/4OYCQK -v --output ICEWS_Coded_Event_Data.zip