Python - SFTP

SFTP, SSH Dosya Aktarım Protokolü olarak da bilinir. Herhangi bir güvenilir veri akışı üzerinden dosya erişimi, dosya aktarımı ve dosya yönetimi sağlayan bir ağ protokolüdür. Program, sunucunun istemciyi zaten doğruladığı ve istemci kullanıcısının kimliğinin protokol tarafından mevcut olduğu SSH gibi güvenli bir kanal üzerinden çalıştırılır.

pysftpmodül, SFTP'ye basit bir arayüzdür. Modül, SFTP ihtiyaçlarını karşılamak için üst düzey soyutlamalar ve görev tabanlı rutinler sunar. Bu yüzden modülü aşağıdaki komutla python ortamımıza kuruyoruz.

pip install pysftp

Misal

Aşağıdaki örnekte, sftp kullanarak uzak bir sunucuda oturum açıyoruz ve sonra bu dizine bir dosya alıp koyuyoruz.

import pysftp
with pysftp.Connection('hostname', username='me', password='secret') as sftp:
    with sftp.cd('/allcode'):           # temporarily chdir to allcode
        sftp.put('/pycode/filename')  	# upload file to allcode/pycode on remote
        sftp.get('remote_file')         # get a remote file

Yukarıdaki kodu çalıştırdığımızda, allcode dizininde bulunan dosyaların listesini görebilir ve ayrıca bu dizine bir dosya koyabilir ve alabiliriz.