11 Ocak 2009, Pazar
Python SFTP? (platform bağımsız)
Transferler şifre ile kodlanmış bir konuma da kodlanmış dosyaları basit bir araç üzerinde çalışıyorum. Python bir acemi değilim, ama teşekkür ederim ftplib için kolay oldu:
import ftplib
info= ('someuser', 'password') #hard-coded
def putfile(file, site, dir, user=(), verbose=True):
"""
upload a file by ftp to a site/directory
login hard-coded, binary transfer
"""
if verbose: print 'Uploading', file
local = open(file, 'rb')
remote = ftplib.FTP(site)
remote.login(*user)
remote.cwd(dir)
remote.storbinary('STOR ' file, local, 1024)
remote.quit()
local.close()
if verbose: print 'Upload done.'
if __name__ == '__main__':
site = 'somewhere.com' #hard-coded
dir = './uploads/' #hard-coded
import sys, getpass
putfile(sys.argv[1], site, dir, user=info)
Sorun sFTP destekleyen herhangi bir kütüphane bulamadım. Bu güvenli gibi bir şey yapmak için normal yolu nedir?
Edit: burada, Paramiko ile çalışma fırsatım oldu. bu sözdizimi oldu cevaplar için Teşekkürler.
import paramiko
host = "THEHOST.com" #hard-coded
port = 22
transport = paramiko.Transport((host, port))
password = "THEPASSWORD" #hard-coded
username = "THEUSERNAME" #hard-coded
transport.connect(username = username, password = password)
sftp = paramiko.SFTPClient.from_transport(transport)
import sys
path = './THETARGETDIRECTORY/' sys.argv[1] #hard-coded
localpath = sys.argv[1]
sftp.put(localpath, path)
sftp.close()
transport.close()
print 'Upload done.'
Tekrar teşekkürler!
CEVAP
11 Ocak 2009, Pazar
Paramiko SFTP destekler. Kullandım ve Çarpık kullandım. Her iki yeri var, ama daha kolay Paramiko başlamak için bulabilirsiniz.
Bunu PaylaÅŸ:

Node.js - eve platform bağımsız şekild...
Çapraz platform alanı birimde kalan py...
Python ile birden çok bağımsız değişke...
Çapraz platform Python uygulamaları da...
Görüntülü Yardım dosyası herhangi bir ...