python 数据文件上传到ftp服务器

这篇具有很好参考价值的文章主要介绍了python 数据文件上传到ftp服务器。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

场景:客户的某数据文件需要定时推送到一个第三方平台的ftp服务器上,第三方平台会对上传过来的数据文件进行解析。
一、通过FTP将文件上传到服务器,需要满足以下几个条件:

  1. 本服务器和ftp服务器是联通的
  2. 需要ftp服务器的IP,用户,密码,端口,ftp服务器文件要存放的路径

二、python代码如下文章来源地址https://www.toymoban.com/news/detail-552557.html

# -*- coding:utf-8 -*-

import logging
from ftplib import FTP


def ftp_connect(ftp_config):
    """

    :param ftp_config:
    :return:
    """
    host = ftp_config.get('host')
    username = ftp_config.get('username')
    password = ftp_config.get('password')
    port = ftp_config.get('port', 21)
    remote_path = ftp_config.get('remote_dir')
    if not (host and username and password and port):
        logging.error('请检查ftp配置,数据:{}'.format(ftp_config))
        print False
        return False, remote_path
    try:
        ftp = FTP()
        ftp.connect(host, port)
        resp = ftp.login(username, password)
        if '230' in resp:
            logging.info('FTP连接成功!')
            print True
            return ftp, remote_path
        print False
        logging.error('FTP连接失败,信息:{},请检查配置信息'.format(resp))
        return False, remote_path
    except Exception as e:
        logging.error('FTP连接抛出异常,异常信息:{}'.format(e))
        print False
    return False, remote_path


def upload_file(ftp, local_path, remote_path):
    """
    # 从本地上传文件到ftp
    :param ftp:
    :param local_path:
    :param remote_path:
    :return:
    """
    try:
        buff_size = 1024 * 1024 * 1024
        fp = open(local_path, 'rb')
        ftp.storbinary('STOR {}'.format(remote_path), fp, buff_size)
        fp.close()
        ftp.quit()
    except Exception as e:
        logging.error('发送文件error:{}'.format(e))


if __name__ == '__main__':
    ftp_config_data = {
        "host": "1.1.1.1",
        "username": "admin",
        "password": "123456",
        "port": 21,
        "remote_path": "/home/tmp/aa.txt"
    }
    local_path = '/xxx/xxx/aa.txt'
    ftp_obj, remote_path = ftp_connect(ftp_config=ftp_config_data)
    if ftp_obj is not False:
        upload_file(ftp_obj, local_path, remote_path)

到了这里,关于python 数据文件上传到ftp服务器的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 玩转服务器之数据传输篇:如何快速搭建FTP文件共享服务器

    FTP服务(File Transfer Protocol,FTP)是最早应用于主机之间数据传输的基本服务之一,是目前使用最广泛的文件传送协议。FTP文件共享服务器在日常办公中可以实现多人之间文件的传递和共享,极大提高协同办公的效率。 Vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序,小巧

    2024年02月07日
    浏览(51)
  • vscode使用ftp-sync快速上传项目代码到服务器(宝塔ftp为例)

    使用vscode开发工具小伙伴们可以在vscode搜一下ftp-sync这个插件,然后点击下载安装 2.使用快捷键 Ctrl+Shift+P命令,输入ftp-sync:Init 然后选中执行 3.执行上述命令快速生成.vscode/ftp-svnc.json文件,里面是一些配置信息 ftp-sync.json内容 此处宝塔随便建一个测试ftp,点击添加FTP,然后基于服

    2024年02月09日
    浏览(38)
  • java通过FTP跨服务器动态监听读取指定目录下文件数据

    1、文件数据在A服务器(windows)(不定期在指定目录下生成),项目应用部署在B服务器(Linux); 2、项目应用在B服务器,监听A服务器指定目录,有新生成文件,进行读取文件信息,持久化数据; 3、提供两块内容,第一安装windows FTP服务;第二项目源码,希望可以帮助到你

    2024年02月03日
    浏览(59)
  • FTP文件传输服务器

    目录 一、FTP协议两种工作模式 二、FTP数据两种传输模式 三、FTP用户分类 四、VSFTP配置案例 4.1匿名开放模式 4.2本地用户模式 4.3虚拟用户模式 五、实验总结 一、FTP 协议两种工作模式 主动模式: 1、客户端主动向ftp服务器发送控制连接,三次握手控制连接建立成功(密码认证

    2024年02月10日
    浏览(50)
  • 【Linux】FTP文件服务器

    FTP (File transfer protocol) 是TCP/IP 协议组中的协议之一。他最主要的功能是在服务器与客户端之间进行文件的传输。FTP就是实现两台计算机之间的拷贝,从远程计算机拷贝文件至自己的计算机上,称之为“下载 (download)”文件。将文件从自己计算机中拷贝至远程计算机上,则称

    2024年02月10日
    浏览(55)
  • FTP服务器与共享文件对比

    FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在FTP的使用当中,用户经

    2024年02月10日
    浏览(81)
  • 正确解决:FTP文件夹错误,将文件复制到FTP服务器时发生错误。请检查是否有权限将文件放到该服务器上。

         FTP文件夹错误,将文件复制到FTP服务器时发生错误。请检查是否有权限将文件放到该服务器上。         谷歌了半天,全是同个答案,压根无法解决,无语到爆炸 (内心:几十篇文章,全都一个样,他们是怎么做到几十个人在那里互抄的,然后还没用):      

    2024年02月15日
    浏览(284)
  • c# 代码操作ftp服务器文件

    好久不见,我又回来了。给大家分享一个最近c#代码操作ftp服务器的代码示例   基础类的构造函数和属性       FtpOperation 中其他的方法 调用示例  贴了半天代码,都不太行,一会能展开,一会展不开,源码地址放下面了。 项目地址:https://github.com/yycb1994/FtpSiteManager

    2024年02月21日
    浏览(40)
  • phpstorm配置ftp同步文件到服务器

    这里的默认快捷键 不是 Ctrl+S ;需要设置快捷键,这里原来是save all操作时上传文件到服务器; ** ** 搜索出save all 后,双击它,弹出设置面板,然后按 Ctrl+S获取按键,最后点击OK

    2024年02月13日
    浏览(51)
  • 41 openEuler搭建FTP服务器-传输文件

    41.1 概述 这里给出vsftpd服务启动后,如何进行文件传输的指导。 41.2 连接服务器 命令格式 ftp [ hostname | ip-address ] 其中hostname为服务器名称,ip-address为服务器IP地址。 操作说明 在openEuler系统的命令行终端,执行如下命令: 根据提示输入用户名和密码,认证通过后显示如下,说

    2024年02月05日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包