如何使用Python在远程服务器上添加文件
我想使用python将文件从笔记本电脑保存到远程服务器,但出现错误: 错误:失败 从最后一个命令开始如何使用Python在远程服务器上添加文件,python,ssh,server,Python,Ssh,Server,我想使用python将文件从笔记本电脑保存到远程服务器,但出现错误: 错误:失败 从最后一个命令开始 import paramiko ssh_client =paramiko.SSHClient() ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh_client.connect(hostname='ipaddress',username='user',password='passwd', port='port
import paramiko
ssh_client =paramiko.SSHClient()
ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh_client.connect(hostname='ipaddress',username='user',password='passwd', port='port')
ftp_client=ssh_client.open_sftp()
ftp_client.put('laptop/path/to/file/','server/saving/path/')
ftp_client.close()
此外,由于该文件上已存在同名文件,因此我想将其替换为此文件。你知道为什么这个代码不起作用吗
我不想在我的终端上使用ssh,因为我希望python脚本每周在更新文件时自动执行此操作
提前感谢您您可以使用scp软件包在远程服务器上进行安全复制。像这样的
from scp import SCPClient
....
scp = SCPClient(ssh_client.get_transport())
payload = os.path.join(...path to file)
scp.put(payload, '/path/on/server/')
如果我将最后一个命令更改为scp.put(payload,'saving/directory/on/server/'),则文件将保存在服务器上的所需目录上,替换已存在的同名文件?@EAS有效负载是要发送到服务器的目录或文件的路径,您可以指定上载的远程路径,或者在上载文件的情况下,可以指定远程路径和文件名。比如说scp.put('test.txt','~/test2.txt')。好吧,看来你解决了我的问题。谢谢!!请提供完整的错误消息。OSError:Failure这只是错误消息。但我解决了这个问题。非常感谢@资产管理公司