SORU
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ş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Flohoo

    Flohoo

    12 EYLÜL 2009
  • Photoshop Pro Help

    Photoshop Pr

    1 Ocak 2007
  • Photoshop Training Channel

    Photoshop Tr

    13 Temmuz 2012