wget选项直接输出到R

时间:2013-01-09 17:03:57

标签: r wget

我有一个wget_string,命令如下:

wget_string <- paste("wget --user=" , u_name , " --password=", p_word,     " ", my_urls,' -qO ', file_name,   sep="")
 system(wget_string)
 readLines(file_name)

哪个有效,但后来我必须使用readLines()将文件读入R.我想运行该命令,以便该文件直接在R中可用,而不保存到硬盘然后从中加载。

我希望通过将文件从Web直接加载到R来节省资源。由于安全服务器,无法从头开始使用readlines。有什么选择?

2 个答案:

答案 0 :(得分:14)

intern=TRUE函数具有的system参数。从命令中捕获输出。使用force和wget的正确选项打印到stdout:

> wget_string="wget -qO- http://www.google.com"
> s = system(wget_string,intern=TRUE)

如果您返回的数据是CSV文件,可以使用textConnection,请将其提供给read.csv

答案 1 :(得分:5)

如果您使用-O -的{​​{1}}选项,则将输出设置为wget(直接在屏幕上书写)。通过这种方式,您可以直接从wget命令的输出中读取。

E.g。

standar output

将下载网页并将其直接打印到 wget -O - http: //www.address.com 。因此,您可以直接读取standard output的输出。

来自system(wget_string)手册页:

  

-O文件          --output文档=文件              文档不会写入相应的文件,但所有文件将连接在一起并写入文件。 如果 - 用作文件,文档将打印到标准输出,禁用链接转换。 (使用              ./-打印到字面上命名的文件 - 。)

相关问题