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

Rob*_*bie 3 url excel r httr readxl

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

我正在尝试使用readxl 包中的 Read Excel file from a URL 中的代码,并且还检查了使用 readxl R 将 excel 文件读取到单个数据帧中

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
Run Code Online (Sandbox Code Playgroud)

我收到以下错误消息:

libxls 错误:无法打开文件

谢谢你的帮助!

MDE*_*ITT 7

如果您向下滚动该网页(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)
Run Code Online (Sandbox Code Playgroud)