如何将具有基本HTTP身份验证的URL中的大型csv文件下载到带有R的数据框中

时间:2017-06-13 14:47:36

标签: r csv http authentication httr

我正在努力检索一个非常大的(4gb)csv文件,该文件受到使用R的基本HTTP身份验证的保护。我没有遇到使用以下代码接收响应的问题:

library(httr)
get_resp <- GET(url, authenticate(user, pass), content_type("text/csv"))

然而,当我试着打电话时:

data <- content(get_resp)

我收到错误,说R字符串限制为2 ^ 3100000字节或其他。我需要将文本数据放入数据框进行分析。有人可以建议替代解决方案吗?

1 个答案:

答案 0 :(得分:1)

好像你有问题describe here。建议是使用write_disk函数来下载数据而不是将其加载到R中。

这样的东西
tmp <- tempfile()
GET(url, authenticate(user, pass), content_type("text/csv"), write_disk(tmp))
paste("Data downloaded to", tmp)

然后,您可以执行其他操作以将块读取到R中或在导入之前拆分文件。