【发布时间】:2013-01-20 16:06:45
【问题描述】:
我看到很多用RCurl下载二进制文件的例子都是这样的:
library("RCurl")
curl = getCurlHandle()
bfile=getBinaryURL (
"http://www.example.com/bfile.zip",
curl= curl,
progressfunction = function(down, up) {print(down)}, noprogress = FALSE
)
writeBin(bfile, "bfile.zip")
rm(curl, bfile)
如果下载量很大,我想最好将它同时写入存储介质,而不是全部在内存中获取。
在 RCurl 文档中,有一些示例可以按块获取文件并在下载文件时对其进行操作,但它们似乎都称为文本块。
你能举个例子吗?
更新
一位用户建议对二进制文件使用 R 原生 download file 和 mode = 'wb' 选项。
在许多情况下,本机函数是一种可行的替代方案,但在许多用例中,本机函数不适用(https、cookie、表单等),这就是 RCurl 存在的原因。
【问题讨论】:
-
download.file没有读入 RAM .. 你能提供一个示例文件来下载download.file不起作用吗? :)