R 3.0.1(Windows 7)でファイルをダウンロードしようとしています:
fileUrl <- "https://data.baltimorecity.gov/api/views/dz54-2aru/rows.csv?accessType=DOWNLOAD"
download.file(fileUrl, destfile="./data/cameras.csv", method="curl")
URLとインターネット接続の両方を確認しましたが、正常に機能しているようです。ただし、次のメッセージが表示されます。
Warning message:
In download.file(fileUrl, destfile = "./data/cameras.csv", method = "curl") :
download had nonzero exit status
オンラインでヘルプが見つかりません、誰かがこれを修正する方法を知っていますか?
@dickoaによる答えはおそらく機能しますが、大きな問題はhttps
を不必要に使用していることだと思います。私はこれがうまくいくと思います:
# Note the http instead of https
file<-'http://data.baltimorecity.gov/api/views/dz54-2aru/rows.csv?accessType=DOWNLOAD'
read.csv(file)
method = "curl"
を削除しても問題が解決しない理由はまだわかりません。
別の解決策は、download.file
をラップするdownloader
パッケージをインストールし、ダウンロードプロセスをより簡単でクロスプラットフォームにすることです(すべてのOSで同じパラメーターを持つ1つの関数)
install.packages("downloader")
fileUrl <- "https://data.baltimorecity.gov/api/views/dz54-2aru
/rows.csv?accessType=DOWNLOAD"
require(downloader)
download(fileUrl, "data/cameras.csv", mode = "wb")
今回はうまくいくことを願っています
別の方法を試してください:..., method = "libcurl")
ダウンロードする前にsetInternet2を使用してください。それは私のために働いた。
setInternet2(use = T)
ファイル<-"URL"
download.file(file、destfile = "./data/cameras.csv")
@dickoa:実行すると「TRUE」が表示されるという事実を考えると:
file.exists("./data")
私はあなたが最初に書いたと思います:
if (!file.exists("data")) { file.create("data") }
共有したコードを実行してcsvをダウンロードする前に。ただし、これにより、ディレクトリではなくファイル「データ」が作成されます。したがって、コードの前にRスクリプトに次のように記述する必要があります。
if (!file.exists("data")) { dir.create("data") }
この後、あなたのコードはうまくいくはずだと思います。お役に立てれば。
これはうまくいきます!
file <-' http://data.baltimorecity.gov/api/views/dz54-2aru/rows.csv?accessType=DOWNLOAD 'download.file(file、destfile = "cameras.csv" )
fileUrl1 <-"https:// ... xyz.csv"
download.file(fileUrl1、destfile = "./ data/xyz.csv"、method = "curl")
以下を使用します(1行目と2行目でhttpsの代わりにhttpを削除しますmehod = "curl")
fileUrl1 <-"http:// ... xyz.csv"
download.file(fileUrl1、destfile = "./ data/xyz.csv")
これを試してみてください、あなたはcsvファイルをダウンロードすることができます
Httpsでsslを省略した後、これが機能することがわかりました。
NatGas <-" http://d396qusza40orc.cloudfront.net/getdata%2Fdata%2FDATA.gov_NGAP.xlsx "
次に、メソッドを「自動」に設定します
download.file(NatGas、destfile = "./TidyData/NatGas.xlsx"、method =" auto "、mode =" wb ")
download.file()
を呼び出すと、ディレクトリは作成されません。
代わりに、ファイルを作成するための有効なディレクトリをすでに作成しておく必要があります。
あなたはまだdata
というフォルダを作成していないと思います。
お役に立てれば。
それは私に起こったばかりです。これを機能させるには、「s
」の「https
」を削除する必要があります。また、「method = curl
」も指定しないでください。私はまだ始めたばかりなので、それがどのように機能するのかわかりませんでしたが、ちょっとそれは仕事をします。
haxx サイトから実際にcurlをダウンロードしてから、その場所をシステム環境変数のパスに追加する必要があることがわかりました。その後、
download.file(fileURL, destfile = "data/cameras.csv", method = "curl")
コマンドは正常に機能しました。これは、Windows 7、64ビットマシン上にありました。
同じファイルをダウンロードするために2つの方法を試しました。
install.packages("downloader")
を使用してパッケージ「ダウンローダー」をダウンロードしてから、require(downloader)
コマンドを使用してパッケージをロードします。この後、次のコマンドを使用します:download(fileurl,"./data/camera.csv",mode="wb")
他の方法は次のとおりです。
file <-' http://data.baltimorecity.gov/api/views/dz54-2aru/rows.csv?accessType=DOWNLOAD 'read.csv(file)
data.frame
メソッドを使用してwrite.csv
ファイルを保存してファイルを保存します。
行を「method = curl」から「method = internal」に変更してみてください
Curlメソッドを使用する場合は、コンピューターにcurlライブラリをインストールする必要があります( http://curl.haxx.se/ )。
method = "libcurl"と書くと、httpまたはhttpsの両方のURLで機能します