11
votes

Module Python SSH / SFTP?

Je cherche un module qui me permet de faire des fonctions SSH / SFTP en Python sans utiliser Popen pour le faire manuellement. Y a-t-il quelque chose comme ça? Je n'ai trouvé aucune information réelle à ce sujet, merci!


4 Réponses :


14
votes

Vous recherchez probablement l'excellente bibliothèque de paramiko:

http://www.paramiko.org/


0 commentaires

4
votes

paramiko fonctionne bien: page d'accueil Paramiko


0 commentaires

1
votes

Selon ce que vous cherchez à faire sur SSH, vous pouvez également profiter de la bibliothèque PEXPPECT: http://www.noah.org/wiki/pexport


0 commentaires

2
votes

Pour SFTP, vous pouvez utiliser PYSFTP , qui est une mince emballage sur le SFTPCCLIENT ( PIP INSTALL SFTP code>).

Exemple Pour télécharger un fichier: P>

import pysftp #pip install sftp
import sys

hostname = "128.65.45.12"
username = "bob"       
password = "123456"  

sftp = pysftp.Connection(hostname, username=username, password=password)

sftp.get('/data/word_vectors/GoogleNews-vectors-negative300.txt', preserve_mtime=True)
print('done')


2 commentaires

J'aime le package PYSFTP, et j'aime que vous ayez noté que cela s'appelle SFTP lors de l'installation via PIP, malgré l'importation de PYSFTP . Cependant, j'avais besoin d'une nouvelle installation récemment (pour Python 3.6), et PIP souhaite réellement PYSFTP maintenant. De plus, pour une meilleure sécurité, vous devez maintenant explicitement désactiver la vérification de la clé d'hôte si vous souhaitez utiliser une authentification uniquement par mot de passe. Ce n'est pas difficile à faire du tout (quelques lignes de code supplémentaires et le message d'avertissement et Documents précisent ce que vous devez faire), mais vous voudrez peut-être mettre à jour votre réponse pour refléter ces modifications.


@Jowny merci bon de savoir. Je n'utilise pas le paquet pour le moment; Si vous avez un extrait de code, vous êtes le bienvenu de mettre à jour la réponse.