2017-10-10 32 views
1

SFTPサーバーからファイルをコピーしようとしています。 私はpython pysftpを使って接続できます。 私は実行することができます:python pysftp [Errno 13]許可が拒否されました:

data = srv.listdir() 
for i in data: 
print I 

私はディレクトリリストを取得します。私は

sftp.put (localpath,"file_name.txt") 

をしようとすると、しかし、私はMKDIRを実行することができますので、私は、そのフォルダへのアクセス権を持っており、それは、そのファイルパスのディレクトリを作成します

"IOError: [Errno 13] Permission denied: 'C:\....."

を取得します。私は多くのさまざまな方法を試しましたが、これまでに何の助けもありませんでした。

import pysftp 
import os 

def sftpExample(): 
cnopts = pysftp.CnOpts() 
cnopts.hostkeys = None 

with pysftp.Connection('HOST', username='username', password='Password', cnopts=cnopts) as sftp : 

    print 'connected ' 
    localpath="C:\\new project\\new" 
      remotepath="/folder1" 
    sftp.put(localpath,"infso.txt") 

sftp.put(localpath,remotepath) 
sftp.getfo (remotepath, localpath) 
srv.get_r(localpath, remotepath) 
srv.close() 

sftpExample() 

私は、このエラーコードを取得する:

Traceback (most recent call last): 
File "db_backup.py", line 42, in <module> 
sftpExample() 
File "db_backup.py", line 17, in sftpExample 
sftp.put(localpath,"GT-Dallas SFTP infso.txt") 
File "c:\Python27\lib\site-packages\pysftp\__init_.py", line 364, in put 
confirm=confirm) 
File "c:\Python27\lib\site-packages\paramiko\sftp_client.py", line 720, in put 
with open(localpath, 'rb') as fl: 
IOError: [Errno 13] Permission denied: "C:\\new project\\new" 

私はあなたがしかし、私はこれまでのところ運がなかったしました見るようにファイルをコピーするには、すべてのさまざまな方法を試してみました。

答えて

0

あり、あなたの問題を引き起こしている可能性がありますいくつかのものがありますが、私には際立っている一つは、あなたのエラーメッセージから来ている:

IOError: [Errno 13] Permission denied: "C:\\new project\\new" 
それはあなたがスペースをエスケープする必要があるかもしれません

"\ ")生の文字列に入れますr"C:\My Path With Spaces"

いずれにしても、ファイル名にスペースを入れないでください。プロジェクトフォルダの名前をnew_projectまたはnewprojectに変更する必要があります。あなたの人生を容易にするだろう

もう一つは、あなたが単一のアーカイブファイル(.tgzまたは.zipか何か)と転送そのファイルにディレクトリを圧縮した場合です。

関連する問題