栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python 拉取远程服务器资源到本地

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python 拉取远程服务器资源到本地

因为功能需要,需要从远端服务器拉取文件资源到本地,写了一个简单脚本. 功能没有很复杂就不写相关解释了

import paramiko

def download_from_remote(remote_path, local_path):
    # 服务器连接信息
    host_ip = 'xxx.xx.xx.xxx'
    port = 22
    user_name = 'root'
    password = 'root'

    try:
        t = paramiko.Transport((host_ip, port))
        t.connect(username=user_name, password=password)  # 登录远程服务器
        sftp = paramiko.SFTPClient.from_transport(t)  # sftp传输协议

        for file_name in sftp.listdir(remote_path):
            if file_name.endswith('.xlsx'):
                src = remote_path + file_name
                des = local_path + file_name
                sftp.get(src, des)  # 下载文件
        t.close()
    except:
        print(IOError)
        remote_scp(host_ip, user_name, password)

if __name__ == '__main__':
    remote_path = '/data/app/test/'
    local_path = '/data/app//resources/'
    #判断文件是否存在
    createDirIfNotExists(local_path)
    # 下载远端文件到当前服务器
    download_from_remote(remote_path, local_path)

需要注意的地方是 sftp.get(src, des) 参数的路径一定要是 ‘文件地址 + 文件名’ (/data/app/test/aa.xlsx) 的格式 ; 否则会出现一个 os的异常,具体这里不在展示了

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1034513.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号