使用download.file函数的OS中R的问题

时间:2013-06-28 01:31:53

标签: r macos

好的,所以这是OSX特有的R问题。

我正在尝试通过API下载XML数据。以下代码在PC上运行正常,但在Mac上运行不正常。我已经轮换所有“方法”(卷曲等)无济于事。有什么想法吗?

tempx <- "temp.xml"
url <- "http://usaspending.gov/fpds/fpds.php?detail=b&fiscal_year=2012&maj_agency_cat=97&max_records=10&sortby=d&records_from=1"

download.file(url, tempx, method="auto")

ETA:这是我的错误:

trying URL 'http://usaspending.gov/fpds/fpds.php?detail=b&fiscal_year=2012&maj_agency_cat=97&max_records=10&sortby=d&records_from=1'
Error in download.file(url, tempx, method = "auto") : 
  cannot open URL 'http://usaspending.gov/fpds/fpds.php?detail=b&fiscal_year=2012&maj_agency_cat=97&max_records=10&sortby=d&records_from=1'

2 个答案:

答案 0 :(得分:1)

这适用于httr

library(httr)
url <- "http://usaspending.gov/fpds/fpds.php?detail=b&fiscal_year=2012&maj_agency_cat=97&max_records=10&sortby=d&records_from=1"
GET(url)

因为它会自动处理重定向:

GET(url)$url
# [1] "http://usaspending.gov/api/fpds_api_basic.php?fiscal_year=2012&maj_contracting_agency=97%2A&Contracts=c&sortby=SIGNED_DATE%2Basc&records_from=0&max_records=10&sortby=SIGNED_DATE+asc"

答案 1 :(得分:0)

这不是作为格式化评论的答案。我也是OSX用户,你的代码也有同样的问题,以及我在解决方案上的努力存在的问题:

library(RCurl)
library(XML)
gotten <- getURL("http://usaspending.gov/fpds/fpds.php?detail=b&fiscal_year=2012&maj_agency_cat=97&max_records=10&sortby=d&records_from=1")

> gotten
[1] "\n"


> gotten2 <- getURLContent("http://usaspending.gov/fpds/fpds.php?detail=b&fiscal_year=2012&maj_agency_cat=97&max_records=10&sortby=d&records_from=1")
> 
> gotten2
[1] "\n"
attr(,"Content-Type")

"text/xml" 

所以我认为会发生某种反应,但初始响应很短,而且代码还没准备好接受之后发生的事情。