首页 > 编程语言 >Python | 将本地文件上传到远程服务器

Python | 将本地文件上传到远程服务器

时间:2023-11-30 10:31:48浏览次数:57  
标签:username remote Python server file path 服务器 password 远程

在Python中,可以使用paramiko库来通过SSH进行文件的传输。

首先,你需要安装paramiko库,可以使用以下命令进行安装:

pip install paramiko

然后,你可以使用以下Python脚本进行文件传输:

此脚本使用SFTP协议进行文件传输。在SFTP的上下文中,你可以使用put方法将本地文件上传到远程服务器。

import paramiko

def upload_file(local_path, remote_path, hostname, username, password):
    # 创建 SSH 客户端
    client = paramiko.SSHClient()
    client.set_missing_host_key_policy(paramiko.AutoAddPolicy())

    try:
        # 连接到远程服务器
        client.connect(hostname, username=username, password=password)

        # 使用 SFTP 协议创建一个传输通道
        with client.open_sftp() as sftp:
            # 上传本地文件到远程服务器
            sftp.put(local_path, remote_path)
            print(f"文件 {local_path} 已成功上传到 {remote_path}")

    except Exception as e:
        print(f"上传文件时发生错误: {e}")

    finally:
        # 关闭 SSH 连接
        client.close()

# 本地文件路径
local_file_path = "/path/to/local/file.txt"

# 远程服务器信息
remote_server_hostname = "your_remote_server_ip"
remote_server_username = "your_username"
remote_server_password = "your_password"

# 远程文件路径
remote_file_path = "/path/to/remote/file.txt"

# 调用函数进行文件上传
upload_file(local_file_path, remote_file_path, remote_server_hostname, remote_server_username, remote_server_password)

确保替换示例中的 your_remote_server_ip、your_username、your_password 以及本地和远程文件路径为你实际使用的值。

此外,建议使用 SSH 密钥而不是密码进行身份验证,以提高安全性。

使用ssh.exec_command()执行指令,如下

rename_folder_command = f'mv today_folder_path yesterday_date'
ssh.exec_command(rename_folder_command)



标签:username,remote,Python,server,file,path,服务器,password,远程
From: https://blog.51cto.com/echohye/8625757

相关文章

  • 使用Win-ACME在Windows+iis服务器下配置自动续期SSL证书
    使用Win-ACME在Windows+iis服务器下配置自动续期SSL证书 由于网站建设和小程序开发等都需要https,但是ssl证书有过期的限制,如果没有及时续期ssl证书,那么将会影响线上程序正常运行,因此我便找了很多可以在windows服务器下使用的自动续期证书的工具。win-acme,github地址:https:/......
  • 多python 目录注意要点
    python是根据path路径优先级找执行文件的。pip是在scripts下的,设置path优先级时,两个路径最好一起设置 VScode的prompt下执行的python和编辑环境有可能不一致。 执行:python-mpipinstallxxx能保证pip安装的内容在当前能运行的python版本下。  ......
  • 常用【描述性统计指标】含义(by python)
    统计学有时候会被误解,好像必须有大量的样本数据,才能使统计结果有意义。这会让我们觉得统计学离我们的日常生活很遥远。其实,如果数据的准确度高的话,少量的样本数据同样能反映出真实的情况。比如,很多国家选举时不断做的民意调查,一般做到有效样本1600多份就够了,不管你是几千万人的小......
  • 本地Linux 服务器实现公网SFTP远程传输文件(小白教程)
    简单几步实现使用SFTP结合cpolar工具实现远程Linux服务器传输文件1.查看局域网IP地址检查Linux局域网IP地址,我们输入:ipaddress然后即可看到设备的局域网IP地址2.局域网测试连接我们打开连接工具,这里使用winSCP连接测试,协议选择SFTP,输入上面查看的ip地址,端口号默认......
  • 聪明办法学python-task05
    python要点注释单行注释以#开头多行注释可以用多个#号,还有'''和""".程序员最讨厌的10件事:0:别人的代码不写注释​1:给自己的代码写注释。行与缩进python最鲜明的特色就是不需要使用{},而是通过缩进来代替代码块同一个代码块的......
  • 聪明办法学python 05
    条件语句 if          elif代替elseif1.每个条件后面要使用冒号 :2使用缩进来划分语句块match...case        match status:                    case400: return...       ......
  • 无涯教程-Python爬虫 - 处理图像和视频
    Web抓取通常涉及下载,存储和处理Web内容,在本章中了解如何处理从Web下载的内容。无涯教程在抓取过程中获得的网络媒体内容可以是图像,音频和视频文件,以及非网页形式的数据文件。但是,能否信任下载的数据,尤其是将要下载并存储在计算机内存中的数据扩展名?这使得了解将要本地存储的数......
  • 聪明方法学python task5 条件/代码风格
    条件控制elif代替了C语言中的elseif缩进划分代码块嵌套if仍然成立多返回语句defabs(n):  ifn<0:    return-n  returnn match-case类比switch-case语句_可以匹配一切。deftest(a):​•matcha:​•case1:​•......
  • 聪明办法学python第三次打卡
    #ifelse语句if: else: #elif语句:if: elif: else: #match-case语句:matchmcase1: case2: case3: case4: case5: 一个case也可以设置多个匹配条件,条件使用|隔开......
  • 【Python爬虫】第13篇:scrapy项目配置和数据获取。从0到scrapy高手笔记(附代码,可自取)
    本文主要学习一下关于爬虫的相关前置知识和一些理论性的知识,通过本文我们能够知道什么是爬虫,都有那些分类,爬虫能干什么等,同时还会站在爬虫的角度复习一下http协议。全套笔记和代码自取地址:请移步这里感兴趣的小伙伴可以自取哦,欢迎大家点赞转发~共8章,37子模块scrapy爬......