要使用Python的SFTP上传文件,您可以使用paramiko库。以下是一个简单的示例代码,演示如何使用paramiko库将文件上传到SFTP服务器:
import paramiko # SFTP服务器连接信息 host = 'sftp.example.com' port = 22 username = 'your_username' password = 'your_password' # 创建SFTP客户端 transport = paramiko.Transport((host, port)) transport.connect(username=username, password=password) sftp = paramiko.SFTPClient.from_transport(transport) # 上传文件 file_path = '/path/to/file.txt' # 要上传的文件的路径 remote_path = '/path/on/server/file.txt' # 上传到服务器的目标路径 with open(file_path, 'rb') as file: sftp.put(file_path, remote_path) # 关闭SFTP连接 sftp.close() transport.close()
在上面的代码中,您需要将host变量替换为您的SFTP服务器地址,将port变量替换为您的SFTP服务器端口(默认为22),将username和password变量替换为您的SFTP登录凭据。然后,使用paramiko.Transport函数创建一个SFTP客户端,并使用transport.connect方法连接到SFTP服务器。接下来,使用paramiko.SFTPClient.from_transport方法从传输对象中创建一个SFTP客户端对象。最后,使用sftp.put方法将文件上传到SFTP服务器,并使用sftp.close和transport.close方法关闭SFTP连接和传输连接。