2016-03-29 8 views
-2

Ich habe diesen FTP-Dateiübertragungscode versucht. Die Sache ist, dass wenn ich diesen Code in einer Online-Umgebung (ein Arbeitsbereich, den ich in Cloud 9 erstellt habe) ausgeführt wurde, dann funktionierte es gut und lud die Datei hoch, aber wenn ich das auf meinem PC ausführe, erhalte ich einen FEHLER. Wie kann ich es lösen?FTP läuft nicht auf dem PC

from ftplib import FTP 

ftp=FTP('**domain**') 
ftp.login(user='username',passwd='password') 
ftp.cwd('/') 

def grabFile(): 
    filename='fileName.txt' 
    localfile=open(filename, 'wb') 
    ftp.retrbinary('RETR '+filename, localfile.write, 1024) 
    ftp.quit() 
    localfile.close() 

def placeFile(): 
    filename= 'Strinzy.txt' 
    ftp.storbinary('STOR '+filename, open(filename,'rb')) 
    ftp.quit() 

placeFile() 

ERROR:

Traceback (most recent call last): 
    File "ftp_trial.py", line 19, in <module> 
    placeFile() 
    File "ftp_trial.py", line 16, in placeFile 
    ftp.storbinary('STOR '+filename, open(filename,'rb')) 
    File "/usr/lib/python2.7/ftplib.py", line 468, in storbinary 
    conn = self.transfercmd(cmd, rest) 
    File "/usr/lib/python2.7/ftplib.py", line 373, in transfercmd 
    return self.ntransfercmd(cmd, rest)[0] 
    File "/usr/lib/python2.7/ftplib.py", line 332, in ntransfercmd 
    conn = socket.create_connection((host, port), self.timeout) 
    File "/usr/lib/python2.7/socket.py", line 571, in create_connection 
    raise err 
socket.error: [Errno 113] No route to host 
+0

"Keine Route zum Host" - ist das nicht offensichtlich? Funktioniert es, wenn Sie einen anderen FTP-Client verwenden? –

+0

@Strinzy Was passiert, wenn Sie tatsächlich versuchen, das Problem zu beheben? :) ... und mit "try fixing" meine ich die Suche nach Fehlern auf Google und SO, das Lesen von Dokumentationen, das Experimentieren mit etwas Testcode usw. Man könnte das Experiment starten, indem man einen Rechner von dem anderen anpingt. – jDo

Antwort

-1

Wenn Sie vsftpd verwenden stellen Sie sicher, Ihre vsftpd Dienst in Ihrem Computer ausgeführt wird und /etc/vsftpd.userlistBenutzername in ihm hat.

Verwandte Themen