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

yipeiwu_com5年前服务器

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)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

PHP实现多服务器session共享之NFS共享的方法

PHP实现多服务器session共享之NFS共享  前言,Nio大侠提出了session多服务器共享的问题,原文请见PHP 实现多服务器共享 SESSION...

Python实现同时兼容老版和新版Socket协议的一个简单WebSocket服务器

最近在做的一个项目中需要使用到HTML5中引入的WebSocket技术,本来以为应该很容易就能搞定,谁知道在真正上手开发了以后才发现有很多麻烦的地方,虽然我们是一个以前端开发和设计见长的...

在windows服务器开启php的gd库phpinfo中未发现

在windows服务器开启php的gd库时,使用cgi之后phpinfo()得到的结果中 Configure Command 中并没有出现gd. Configure Command 后显...

使用Python创建简单的HTTP服务器的方法步骤

如果需要一个简单的Web Server,而不是安装那些复杂的HTTP服务程序,比如:Apache,Nginx等。那么可以使用Python自带的包完成一个简单的内建 HTTP 服务器。于是...

phpmailer在服务器上不能正常发送邮件的解决办法

phpmailer本身是一个很不错的开源邮件类,也非常的易用简单,就是偶尔会出现程序上传到服务器上不能发送邮件的情况,在之前也有同学问过我这个问题,当时的时候总是不以为然,今天终于让我碰...