Kurze Zusammenfassung
In diesem Blog erfahren Sie, wie Sie mit Python Dateien auf den FTP-Server herunterladen und hochladen. Die Hauptfunktion des FTP-Servers ist die Möglichkeit, Dateien zu speichern und abzurufen. Außerdem werden wir einen Test-FTP-Server namens DLPTEST verwenden. Darüber hinaus werden wir das in Python integrierte Modul ftplib verwenden.
In diesem Blog erfahren Sie, wie Sie mit Python Dateien auf einen FTP-Server herunterladen und hochladen. Bevor wir fortfahren, schauen wir uns kurz an, was FTP ist.
Was ist ein FTP?
FTP steht für Files Transfer Protocol. Die Hauptfunktion von FTP ist die Übertragung von Dateien vom lokalen zum entfernten Ort mithilfe von TCP-Verbindungen. FTP wird auch als Anwendungsschichtprotokoll bezeichnet. FTP verfügt über zwei Prozesse für den Transformationsprozess: Datenverbindung und Steuerverbindung.
Gemäß dem heutigen Thema werden wir das ftplib-Modul von Python im FTP-Server zum Herunterladen und Hochladen von Dateien verwenden. Lassen Sie uns kurz etwas über das ftplib-Modul sagen.
Beschreiben Sie das ftplib-Modul.
Um Dateien auf dem FTP-Server zu übertragen, verfügt Python über ein Modul namens ftplib. Mithilfe von ftplib können Sie eine Verbindung zum clientseitigen FTP-Server herstellen und Dateien übertragen. Außerdem können Sie mit dem Python-Modul Dateien auf den FTP-Server herunterladen und hochladen.
Implementierungsleitfaden
Hier werden die Informationen mithilfe eines Test-FTP-Servers, DLPTEST und des in Python integrierten ftplib-Moduls präsentiert.
import ftplib FTP_HOST = “ftp.dlptest.com” FTP_USER = “”; FTP_PASS = „Passwort“
Der obige Code neigt dazu, Anmeldeinformationen an den FTP_Benutzer weiterzuleiten. Das Passwort kann von Zeit zu Zeit geändert werden. Stellen Sie beim Vornehmen von Änderungen sicher, dass Sie deren Website besuchen, um sie zu korrigieren.
Der folgende Schrittcode besteht darin, die Verbindung mit FTP_SERVER herzustellen.
#mit FTP-Server verbinden ftp = ftplib.FTP(FTP_HOST, FTP_USER, FTP_PASS) ftp.encoding = “utf-8”
Hochladen von Dateien
Das Hochladen der Datei über einen FTP-Server wird unten gezeigt. Der lokale Name zur Identifizierung der Datei ist „Some_file“.
filename = „some_file.txt“ mit open(filename, „rb“) als Datei: # Verwenden Sie den STOR-Befehl von FTP, um die Datei hochzuladen ftp.storbinary(f“STOR filename“, file)
Nach diesem Code beginnt der Upload der Datei auf FTP_SERVER. Und zum Hochladen haben wir den Befehl STOR verwendet.
Außerdem öffnet „rb“ die Datei schreibgeschützt im Binärformat und beginnt mit dem Lesen am Anfang der Datei. Während die binäre Form für verschiedene Zwecke verwendet werden kann.
Da uns bekannt ist, dass der Testserver die Dateien nach 30 Minuten löscht, listen wir die Dateien und Verzeichnisse mit dem folgenden Code auf, um sicherzustellen, dass die Dateien hochgeladen werden.
# aktuelle Dateien und Verzeichnisse auflisten ftp.dir()
Dateien herunterladen
filename = „some_file.txt“ mit open(filename, „wb“) als Datei: # Verwenden Sie den RETR-Befehl von FTP, um die Datei herunterzuladen ftp.retrbinary(f“RETR filename“, file.write)
Wir laden mit dem Befehl „wb“ herunter, da dieser die Datei vom FTP_SERVER auf den lokalen Rechner schreibt.
Hier öffnet „wb“ die Datei schreibgeschützt im Binärformat.
Mit dem RETR-Befehl, der eine Kopie einer Datei vom Server herunterlädt, können wir eine Kopie einer Datei anfordern, indem wir dem Befehl als erstes Argument den Namen der Datei geben, die wir herunterladen möchten.
Das zweite Argument der Methode ftp.retrbinary() gibt die Vorgehensweise beim Speichern der Datei auf dem lokalen Computer an.
Die Datei kann auch nach dem Löschen erneut angezeigt werden, wenn wir den Code erneut ausführen, was den erfolgreichen Downloadvorgang beweist.
Um nun die FTP-Serververbindung zu schließen, lautet der letzte Code:
#quit und schließe die Verbindung ftp.quit()
Codes zum Hoch- und Herunterladen von Dateien auf dem FTP-Server
Laden Sie die Datei mit Python auf den FTP-Server hoch.
Ftp_file_uploader.py import ftplib #FTP-Server-Anmeldeinformationen FTP_HOST = “ftp.dlptest.com” FTP_USER = “” FTP_PASS = “Passwort” #Mit FTP-Server verbinden ftp = ftplib.FTP(FTP_HOST, FTP_USER, FTP_PASS) ftp.encoding = “utf -8” # lokaler Dateiname, den Sie hochladen möchten filename = “some_file.txt” mit open(filename, “rb”) als Datei: # Verwenden Sie den STOR-Befehl von FTP, um die Datei hochzuladen ftp.storbinary(f”STOR filename” , Datei) # aktuelle Dateien und Verzeichnisse auflisten ftp.dir() # Verbindung beenden und schließen ftp.quit()s
Laden Sie die Datei mit Python auf den FTP-Server herunter.
Ftp_file_downloader.py import ftplib FTP_HOST = “ftp.dlptest.com” FTP_USER = “” FTP_PASS = “password” # Verbindung zum FTP-Server herstellen ftp = ftplib.FTP(FTP_HOST, FTP_USER, FTP_PASS) # UTF-8-Kodierung erzwingen ftp.encoding = „utf-8“ # der Name der Datei, die Sie vom FTP-Server herunterladen möchten filename = „some_file.txt“ mit open(filename, „wb“) als Datei: # Verwenden Sie den RETR-Befehl von FTP, um die Datei ftp.retrbinary herunterzuladen (f”RETR filename”, file.write) # Verbindung beenden und schließen ftp.quit()
Abschluss:
Zum Abschluss hier die oben angegebenen Codes zum Hoch- und Herunterladen von Dateien auf einen FTP-Server mit Python. Zusammenfassend lässt sich sagen, dass der Code mit der oben geteilten Ausgabe perfekt läuft.