Download .RData und .csv-Dateien von FTP mit RCurl (oder jede andere Methode)
Habe ich hochgeladen .RData-Datei (erstellt mit save()
) auf einen ftp-server, und ich versuche, die Verwendung von getURL() zum download der gleichen Datei. Für alle Beispiele und Beiträge, die ich gelesen habe, ich kann nicht scheinen, um diese zu arbeiten.
Den .RData-Datei gespeichert wurde:
save(results, file=RDataFilePath, compress="xz") #save object "results" w/compression
#RDataFilePath is the location of the results.RData file on my harddrive
Diese Daten wurden hochgeladen mit:
uploadURL <-"ftp://name:password@host/folder/results.RData" #name the url
ftpUpload(RDataFilePath, to=uploadURL, connecttimeout=120) #upload
Dies ist, wie ich versuche, download-Ergebnisse.RData mit getURL
:
downloadURL <- "host/folder/results.RData"
load(getURL(downloadURL, userpwd="name:password", connecttimeout=120))
welche gibt die folgende Fehlermeldung:
Error in curlPerform(curl = curl, .opts = opts, .encoding = .encoding) :
embedded nul in string: 'ý7zXZ'
Wenn ich fügen Sie den downloadURL
string in meinem browser, die .RData Datei-downloads sofort, damit ich weiß, es ist kein Tippfehler. Die Fehlermeldung deutet darauf hin, dass die url nicht bekommen können, Lesen Sie b/c für die Komprimierung, Formatierung, allerdings bekomme ich eine ähnliche Fehlermeldung, wenn ich save()
w/o-Kompression.
Bekomme ich auch eine Fehlermeldung, wenn Sie versuchen herunterzuladen .csv vom FTP:
read.csv(getURL(downloadURL1)) #downloadURL1 is similar to downloadURL, but points to the .csv file
Error in file(file, "rt") : cannot open the connection
dann eine Warnung, die besagt In addition: Warning message:
und dann beginnt die Auflistung der Inhalte der .csv.
In file(file, "rt") : cannot open file
Ich habe versucht, dies herauszufinden, für den besseren Teil von den Morgenstunden, und ich fühle mich wie ich muss fehlt etwas wirklich grundlegendes. Ich vermute, dass ich ändern müssen, einige curl-option, so dass es weiß, welche Art von Datei es geht zu Lesen. Meine syntax ist wohl ein bisschen off, und ich bin nicht mit getURL richtig, aber ich bin mir nicht sicher, was ich tun sollte.
Irgendwelche Tipps würde sehr geschätzt werden.
p.s. Mein Aktueller Ansatz basiert auf diesem Post
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie versuchen, brechen Sie in zwei Schritten vor: zuerst laden Sie die Datei, dann laden Sie es.
oder kleben mit rCurl die Sie ausprobieren können:
test=getURL( )
undread.csv(text=test)
Dank! Aber ich bekomme immer noch eine Fehlermeldung, wenn Sie versuchen zu Lesen .RData-Datei "Fehler in curlPerform(curl = curl .opts = opts, .Codierung = .Codierung) : embedded nul in string: 'ý7zXZ'". Wenn ich versuche, download.Datei, es sagt, dass es nicht öffnen, die URL.getBinaryURL()
ich kann die Datei in binärer form, aber es ist alles nur Unsinn und ich kann nicht herausfinden, wie es zu konvertieren. Es ist Klasse, ist "raw", und speichern() laden() wieder nicht konvertieren es zurück zu der ursprünglichen R-Objekt (oder nichts sinnvolles).Verbrachte ich ein wenig Zeit auf diesem als auch - in der Hoffnung, diese in ein Glänzendes app so will ich nicht auf die Platte schreiben.
Mithilfe rawConnection() ich war in der Lage zu vermeiden, die auf die Platte schreiben Schritt, wie es verarbeitet die RAW-Daten Typ perfekt und vermeiden Sie den Fehler.
FYI - Dies ist mein Erster Beitrag also ich hoffe, es ist hilfreich