python基于paramiko将文件上传到服务器代码实现

python通过安装使用paramiko模块,将本地文件上传到服务器上

import paramiko
import datetime
import os

hostname = '服务器ip'
username = 'root'
password = '服务器密码'
port = 22#配置信息可以写到配置文件中
#loacl_file是要上传的本地文件路径
#remote_path是要上传到服务器上指定文件的路径
def upload(local_file, remote_path):
  try:
    t = paramiko.Transport((hostname, port))
    t.connect(username=username, password=password)
    sftp = paramiko.SFTPClient.from_transport(t)
    print('开始上传文件%s ' % datetime.datetime.now())

    try:
      sftp.put(local_file, remote_path)
    except Exception as e:
      sftp.mkdir(os.path.split(remote_path)[0])
      sftp.put(local_file, remote_path)
      print("从本地: %s 上传到: %s" % (local_file, remote_path))
    print('文件上传成功 %s ' % datetime.datetime.now())
    t.close()
  except Exception as e:
    print(repr(e))


if __name__ == '__main__':
  local_file = r'/home/shl/dataETL/timings/words/word_pos.csv'
  remote_path = os.path.join('/home/',"word_pos.csv")
  upload(local_file, remote_path)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。