【python】基于paramiko库的远程文件服务器FTP文件下载与上传
模块作用:
1、通过ssh协议远程执行命令
2、文件上传下载
安装
pip install paramiko
二次封装
File2Scp.py
import paramiko
import os
import stat
import datetime as dt
_XFER_FILE = 'FILE'
_XFER_DIR = 'DIR'
class File2Scp(object):
# 构造方法
def __init__(self):
# 超类调用
super(File2Scp, self).__init__()
# 赋值参数[字典]
self.arg = {
'ip':'填ip','user':'用户名','password':'123','port':22}
# 赋值参数[FTP]
self.sftp = None
# 调试日志
# print(self.arg)
# 启动程序
def startup(self):
if self.sftp:
print('connect success...')
tmp_str = 'start connect...user name:' + self.arg['user'] + ' password:' + self.arg['password'] + ' IP:' + \
self.arg['ip'] + ' port:' + str(self.arg['port'])
print(tmp_str)
try:
transport = paramiko.Transport((self.arg['ip'], self.arg['port']))
transport.connect(
username=self.arg['user'], password=self.arg['password'])
self.sftp = paramiko.SFTPClient.from_transport(transport)
print('connect success ' + self.arg['ip'])
except Exception as e:
print('connect success: ' + str(e))
# 关闭程序
def shutdown(self):
# 关闭FTP
if self.sftp:
self.sftp.close(