2017-04-23 57 views
0

我一直在試圖通過使用密碼來將scp文件做到遠程計算機。我用這個代碼:使用密碼的python中的SCP

import os 
import scp 
client = scp.Client(host="104.198.152.xxx", username="nxxx", password="xxxxxx") 
client.transfer("script.py", "~/script.py") 

,因爲它在How to scp in python?商的建議,但它輸出:

File "script.py", line 5, in <module> 
    client = scp.Client(host="104.198.152.153", username="nazarihome", password="mohMOH13579") 
AttributeError: 'module' object has no attribute 'Client' 

我也嘗試過其他方法,人們建議,似乎他們都不工作。有沒有人有一個真正有效的建議?

p.s.如果您的答案取決於此,我必須使用密碼而非密鑰。

+0

你試過'scp.SCPClient'而不是'scp.Client'嗎? – silel

+1

您從問題中複製了一個示例,而不是答案。再看看你基於你的例子的帖子。 –

+0

您提到的帖子中的代碼不是真實的。這是一種願望清單。 – Shiping

回答

-1

scp.py GitHub page具有使用本身帶有paramiko庫處理SSL下面的例子:

from paramiko import SSHClient 
from scp import SCPClient 

ssh = SSHClient() 
ssh.load_system_host_keys() 
ssh.connect('example.com') 

# SCPCLient takes a paramiko transport as its only argument 
scp = SCPClient(ssh.get_transport()) 

scp.put('test.txt', 'test2.txt') 
scp.get('test2.txt') 

scp.close() 

所以實際的類型你想它是scp.SCPClient