Comment utiliser FTP dans Python?

Comment utiliser FTP dans Python?
Avez-vous déjà utilisé un système de contrôle de version ou un système réseau cloud dans lequel vous et vos collègues pouvez mettre à jour les données et récupérer les fichiers? Sinon, cet article serait très bénéfique pour vous. Vous pouvez créer des programmes Python qui effectuent plusieurs tâches FTP autonomes en utilisant le package FTPLIB à Python. Pour télécharger des fichiers et les gérer hors ligne, les utilisateurs peuvent se connecter instantanément à quelque chose comme un serveur FTP. Dans cet article, nous discuterons des programmes Python pour utiliser le serveur FTP et accéderons à ses fichiers au système local.

Exemple 01:

Commençons par le premier exemple de Python en utilisant FTP dans ses programmes. Pour cela, nous utilisons l'outil Spyder 3 pour le programme Python dans Windows 10 System. Ce script doit d'abord établir une connexion à un serveur FTP. Nous avons créé un nouveau fichier nommé «Test.Py ”dans l'outil Spyder 3 et l'enregistre dans le dossier Spyder respectif. Nous avons commencé ce code avec l'importation de la bibliothèque «FTPLIB» pour utiliser FTP dans Python.

Après cela, nous avons essayé de nous connecter à un serveur FTP en utilisant son URL officielle I.e., «FTP.nluug.nl ". Cette URL a été utilisée dans la fonction «FTP» via l'utilisation de la bibliothèque «FTPLIB» de Python. Le résultat de retour pour cette fonction FTP serait enregistré dans l'objet «FTP» «F». En utilisant cet objet FTP «F», nous avons utilisé la fonction Login () de FTP pour nous connecter à partir de l'utilisateur FTP en utilisant le nom d'utilisateur anonyme et son mot de passe ou un e-mail pour se connecter. Nous avons défini une liste vide «V» qui stockera la liste des documents et répertoires résidant dans le dossier racine de ce serveur FTP. Cette liste «V» a utilisé la fonction «APPEND ()» de Python pour insérer tous les fichiers et répertoires sous la forme d'un tableau résidant dans le répertoire de travail actuel lui-même dans la liste «V» via la fonction «DIR».

Après cela, l'objet FTP a été utilisé pour fermer la connexion au serveur via l'utilisation de la fonction QUIT () de la bibliothèque FTP. Après cela, nous avons utilisé la liste «V» dans la boucle «For» pour lire toutes ses données ligne par ligne et l'imprimer tous en utilisant la fonction «Imprimer» avec la variable de ligne, en prenant chaque document ou répertoire en tant que élément d'une liste. Notre code est maintenant terminé et nous l'avons enregistré pour exécuter.

importer ftplib
f = ftplib.FTP ("FTP.nluug.nl ")
F.Connexion ("Anonyme", "FTPLIB-Example-1")
v = []
F.dir (V.ajouter)
F.arrêter()
pour la ligne en V:
imprimer ("-", ligne)

En exécutant ce code dans Spyder 3 en utilisant son bouton d'exécution, nous avons la liste de tous les fichiers disponibles dans le répertoire racine du serveur FTP sur notre console Spyder. Vous pouvez voir qu'il affiche les privilèges attribués à chaque répertoire avec leur date de création et leur nom de fichier après cela. Il y a des fichiers miroirs dans la liste ainsi que des liens symboliques.

Exemple 02:

Dans notre premier exemple, nous avons examiné comment énumérer tous les fichiers et dossiers résidant dans le dossier racine actuel de votre serveur FTP. Maintenant, nous énumérons les documents du dossier spécifique de votre serveur FTP. Pour cela, nous utilisons tout à fait le même code que nous avons utilisé dans le premier exemple. Ainsi, nous avons commencé cet exemple avec l'importation de la même bibliothèque FTPLIB de Python pour connecter notre programme avec le serveur FTP. Nous avons connecté notre programme avec le même serveur FTP à l'aide de la fonction FTP et nous nous connectons de manière anonyme via la fonction Login () de Python.

Après une connexion réussie en utilisant l'objet «F» du package FTP de Python, nous avons initialisé une liste vide «V» qui sera utilisée plus loin. La fonction «cwd ()» du module FTP dans Python a été utilisée pour modifier le répertoire de travail actuel et se déplacer dans un nouveau dossier i.e., «Pub» de notre serveur FTP. Maintenant, nous sommes à un emplacement différent du serveur FTP et en utilisant la fonction APPEND pour insérer tous les fichiers du dossier «Pub» dans la liste «V» à l'aide de la fonction «DIR».

La fonction QUIT () a été utilisée pour quitter le serveur FTP. La boucle «pour» est là pour imprimer chaque fichier dans ce dossier «pub» en tant qu'élément de ligne séparé.

importer ftplib
f = ftplib.FTP ("FTP.nluug.nl ")
F.Connexion ("Anonyme", "FTPLIB-Example-1")
v = []
F.cwd ('/ pub /')
F.dir (V.ajouter)
F.arrêter()
pour la ligne en V:
imprimer ("-", ligne)

Après l'exécution de ce code mis à jour, nous avons tous les fichiers et dossiers du dossier «pub» affiché sur l'écran de la console.

Exemple 03:

Les deux exemples ci-dessus visaient à répertorier les fichiers du serveur FTP sur votre console. Maintenant, nous allons examiner l'utilisation de la fonction Python getFile () de FTP pour récupérer les fichiers du serveur FTP dans notre système local.

Pour cela, nous avons défini la fonction «GetFile» avec l'objet «F» et le nom de fichier. La gestion des exceptions de l'essai a été utilisée ici pour ouvrir le fichier respectif à partir de n'importe quel dossier du serveur, faire sa copie à l'aide de la fonction «Écrire» et l'enregistrer dans le système local à l'aide de la fonction «Retrbinary». Si cela ne se produit pas, la partie sauf lancera une exception.

Après cela, la connexion au serveur serait établie et nous passons au dossier «pub». La fonction getFile () a été appelée trois fois pour récupérer différents fichiers à chaque fois. Enfin, nous avons fermé la connexion via la fonction quit ().

importer ftplib
Def GetFile (F, nom de fichier):
essayer:
F.Retrbinary ("RetT" + FileName, Open (nom de fichier, 'WB').écrire)
sauf:
imprimer ("erreur")
f = ftplib.FTP ("FTP.nluug.nl ")
F.Connexion ("Anonyme", "FTPLIB-Example-1")
F.cwd ('/ pub /')
getFile (f, 'db')
getFile (f, 'crypto')
Getfile (F, 'Favicon.ICO ')
F.arrêter()

En exécutant ce programme, nous avons les trois fichiers du système local comme indiqué.

Conclusion

Cet article contient une excellente explication de l'objectif d'utiliser le serveur FTP dans Python Code: récupérer les fichiers en ligne sur votre système local. Nous avons discuté de la façon dont les fichiers du serveur FTP peuvent être répertoriés dans la console et comment nous pouvons les chercher facilement à l'aide des fonctions FTP.