2017-12-07 3 views
1

Ich denke, meine Frage klingt irgendwie dumm, aber ich bin ziemlich neu in Python-Programmierung.Füllen Variable mit Text einer TXT-Datei auf einem FTP-Server in Python

Ich möchte nur eine Textvariable, die eine Zeichenfolge aus einer TXT-Datei auf einem FTP-Server erhält.

Also abschließend: Es gibt eine .txt-Datei auf einem FTP-Server gespeichert und ich mag den Inhalt dieser Datei in einer Variablen gespeichert haben ...

Das ist, was ich bisher habe ... Kann mir jemand helfen? Ich benutze Python 3.6.3 :) danke im voraus!

from ftplib import FTP 

ftp = FTP('1bk2t.ddns.net') 
ftp.login(user='User', passwd = 'Password') 

ftp.cwd('/path/') 

filename = 'filename.txt' 

ftp.retrbinary("RETR " + filename, open(filename, 'wb').write) 
ftp.quit() 

var = localfile.read 

Antwort

1

Wenn Sie eine Textdatei Inhalt in den Speicher herunterzuladen, ohne eine temporäre Datei, verwenden Sie retrlines like:

contents = "" 
def collectLines(s): 
    global contents 
    contents += s + "\n" 

ftp.retrlines("RETR " + filename, collectLines) 

Oder ein Array verwenden:

lines = [] 
ftp.retrlines("RETR " + filename, lines.append) 
+0

Thank du :) Die erste Methode würde bei mir nicht funktionieren. Wissen Sie nicht wirklich warum? Die Array-Methode funktionierte überhaupt nicht, also habe ich diese für mein Projekt verwendet :) wirklich wirklich danke, du hast meinen Tag gemacht :) –

+0

Gern geschehen. Wir bedanken uns bei Stack Overflow jedoch bei [Annahme der Antwort] (// stackoverflow.com/help/someone-answers). –

+0

Ich habe auch das erste Beispiel behoben. –

Verwandte Themen