如何使用python脚本将文件从客户端传输到服务器计算机?

时间:2012-10-16 07:14:11

标签: python

  • 我正在编写一个python脚本,将python(比如ABC.py)文件从一个目录复制到另一个目录 具有相同文件夹名称(例如ABC)的目录,作为脚本名称,不包括.py。
  • 在本地系统中,它可以正常工作,并通过
    将文件从一个目录复制到其他目录 创建同名文件夹。
  • 但实际上我想将这些文件从本地系统(Windows XP)复制到遥控器 system(Linux)位于我执行脚本的其他国家/地区。但我得到了 错误“未找到目标路径”表示我无法连接到远程
    这就是原因。
  • 我使用SSH安全客户端。
  • 我使用IP地址和端口号连接到远程服务器。
  • 然后它会询问用户ID和密码。

    但是我无法通过我的python脚本连接到远程服务器。

任何人都可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:2)

paramiko提供SFTPClient可用于执行此操作。

import paramiko

source = r'C:\Somedir\somefile.txt'
dest = r'/home/user/file.txt'
hostname = 'linux.server.com'
port = 22 # default port for SSH
username = 'user'
password = 'secret'

try:
    t = paramiko.Transport((hostname, port))
    t.connect(username=username, password=password)
    sftp = paramiko.SFTPClient.from_transport(t)
    sftp.put(source, dest)
finally:
    t.close()

答案 1 :(得分:-1)

我使用了相同的脚本,但我的主机没有响应。我的主机在不同的网络中。

WinError 10060] 连接尝试失败,因为连接方在一段时间后没有正确响应,或者因为连接的主机没有响应而建立连接失败