使用readxl和httr / libxls将Excel文件读入R错误:无法打开文件

时间:2019-09-04 12:50:15

标签: r excel url httr readxl

我想使用Excel文件的网址从网站Link中读取Excel文件的工作表1。我在Windows 10 R 3.6.1上。

我正在尝试使用Read Excel file from a URL using the readxl package中的代码,并且还检出了reading excel files into a single dataframe with readxl R

url = 'https://dataverse.harvard.edu/file.xhtml?  persistentId=doi:10.7910/DVN/WEGWGS/I11K9Y&version=1.0'
GET(url, write_disk(tf <- tempfile(fileext = ".xls")))
df <- read_excel(tf, 1L)


# Error message
libxls error: Unable to open file

我收到以下错误消息:

  

libxls错误:无法打开文件

感谢您的帮助!

1 个答案:

答案 0 :(得分:3)

如果您向下滚动该网页(https://dataverse.harvard.edu/dataset.xhtml?persistentId=doi:10.7910/DVN/WEGWGS),您会看到有一个直接链接(在文件元数据框中)直接下载文件的明确链接。

如果执行以下操作(类似于上面的代码),则可以正确检索文件:

url = 'https://dataverse.harvard.edu/api/access/datafile/:persistentId?persistentId=doi:10.7910/DVN/WEGWGS/I11K9Y'

library(tidyverse)
library(httr)
library(readxl)
httr::GET(url, write_disk(tf <- tempfile(fileext = ".xlsx")))
tf

df <- read_excel(tf, 1L)