2015-11-17 22 views
7

私はpythonでsftpサーバーにファイルをアップロードする簡単なコードを書いています。私はpythonを使用しています2.7pythonでsftp経由でファイルをアップロード

import pysftp 

srv = pysftp.Connection(host="www.destination.com", username="root", 
password="password",log="./temp/pysftp.log") 

srv.cd('public') #chdir to public 
srv.put('C:\Users\XXX\Dropbox\test.txt') #upload file to nodejs/ 

# Closes the connection 
srv.close() 

ファイルがサーバーに表示されませんでした。ただし、エラーメッセージは表示されませんでした。コードの何が間違っていますか?

EDIT:ロギングを有効にしました。ファイルがパブリックフォルダではなくルートフォルダにアップロードされていることがわかりました。 srv.cd('public')のように見えませんでした。

+1

と内側srv.putを入れてください。 Connectionを作成してログファイルを調査するときは、 'log = '/ tmp/pysftp.log''を設定してください。 –

答えて

10

私自身の質問に対する答えが見つかりました。

import pysftp 

srv = pysftp.Connection(host="www.destination.com", username="root", 
password="password",log="./temp/pysftp.log") 

with srv.cd('public'): #chdir to public 
    srv.put('C:\Users\XXX\Dropbox\test.txt') #upload file to nodejs/ 

# Closes the connection 
srv.close() 

それはあなたの説明から教えて少し難しいsrv.cd

関連する問題