广告
返回顶部
首页 > 资讯 > 服务器 >Python搭建FTP服务器
  • 863
分享到

Python搭建FTP服务器

服务器PythonFTP 2023-01-31 05:01:03 863人浏览 薄情痞子
摘要

python版本 3.6.2 使用的ftp包:pyftpdlib    pip install pyftpdlib就可以下载安装了 FTP协议下载上传文件在文件过大的情况下会比Http更具有优势,更为方便的实现断点上传和进度监控,下面是官

python版本 3.6.2

使用的ftp包:pyftpdlib    pip install pyftpdlib就可以下载安装了

FTP协议下载上传文件在文件过大的情况下会比Http更具有优势,更为方便的实现断点上传和进度监控,下面是官方文档中的基本方法

import os

from pyftpdlib.authorizers import DummyAuthorizer
from pyftpdlib.handlers import FTPHandler
from pyftpdlib.servers import FTPServer

def main():
    # 实例化用户授权管理
    authorizer = DummyAuthorizer()
    authorizer.add_user('user', '12345', 'path', perm='elradfmwMT')#添加用户 参数:username,passWord,允许的路径,权限
    authorizer.add_anonymous(os.getcwd())#这里是允许匿名用户,如果不允许删掉此行即可

    # 实例化FTPHandler
    handler = FTPHandler
    handler.authorizer = authorizer

    # 设定一个客户端链接时的标语
    handler.banner = "pyftpdlib based ftpd ready."

    #handler.masquerade_address = '151.25.42.11'#指定伪装ip地址
    #handler.passive_ports = range(60000, 65535)#指定允许的端口范围

    address = (ipaddr, 21)#FTP一般使用21,20端口
    server = FTPServer(address, handler)#FTP服务器实例

    # set a limit for connections
    server.max_cons = 256
    server.max_cons_per_ip = 5

    # 开启服务器
    server.serve_forever()

if __name__ == '__main__':
    main()

开启ftp服务器后要确定防火墙开启了21,20端口,并且在客户端的浏览器中设置internet选项高级选项卡中的被动ftp的勾去掉之后才能登陆到ftp服务器

windows登录到服务器:


利用Python从ftp服务器上下载文件

from ftplib import FTP

ftp=FTP()
ftp.connect('localhost',21)#localhost改成服务器ip地址
ftp.login(user='user',passwd='12345')

file=open('f://ftpdownload/test.txt','wb')
ftp.retrbinary("RETR test.txt",file.write,1024)#从服务器上下载文件 1024字节一个块
ftp.set_debuglevel(0)
ftp.close()
FTP服务器事件回调函数:

class MyHandler(FTPHandler):

    def on_connect(self):#链接时调用
        print "%s:%s connected" % (self.remote_ip, self.remote_port)

    def on_disconnect(self):#关闭连接是调用
        # do something when client disconnects
        pass

    def on_login(self, username):#登录时调用
        # do something when user login
        pass

    def on_loGout(self, username):#登出时调用
        # do something when user logs out
        pass

    def on_file_sent(self, file):#文件下载后调用
        # do something when a file has been sent
        pass

    def on_file_received(self, file):#文件上传后调用
        # do something when a file has been received
        pass

    def on_incomplete_file_sent(self, file):#下载文件时调用
        # do something when a file is partially sent
        pass

    def on_incomplete_file_received(self, file):#上传文件时调用
        # remove partially uploaded files
        import os
        os.remove(file)



--结束END--

本文标题: Python搭建FTP服务器

本文链接: https://www.lsjlt.com/news/188437.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python搭建FTP服务器
    Python版本 3.6.2 使用的ftp包:pyftpdlib    pip install pyftpdlib就可以下载安装了 FTP协议下载上传文件在文件过大的情况下会比HTTP更具有优势,更为方便的实现断点上传和进度监控,下面是官...
    99+
    2023-01-31
    服务器 Python FTP
  • python如何搭建FTP服务器
    这篇文章主要介绍了python如何搭建FTP服务器,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、了解FTP服务器FTP(文件传输协议),运行在tcp洗衣上,使用两个端口,...
    99+
    2023-06-15
  • python一秒搭建FTP服务器
    一、了解FTP服务器 FTP(文件传输协议),运行在tcp洗衣上,使用两个端口,即数据端口和命令端口,也称之为控制端口。默认情况下,20是数据端口,21是控制端口。 FTP有两种传输模式:主动模式和...
    99+
    2022-06-02
    python FTP服务器 python搭建FTP服务器
  • Python搭建HTTP服务器和FTP服务器
    本教程为大家分享了Python搭建HTTP服务器和FTP服务器的具体步骤,供大家参考,具体内容如下 默认安装版本为pytho2.7 http服务器搭建教程: 进入要开放访问的目录下,执行命令:python ...
    99+
    2022-06-04
    服务器 Python HTTP
  • centos搭建FTP服务器
    在LINUX虚拟机上,使用vsftpd搭建一个FTP服务器,并创建一个用户名为“ftpuser”的用户,使用windows主机通过ftp向文件夹中复制一个名为自己姓名首字母的txt文件,拍照上传文...
    99+
    2023-09-02
    服务器 linux 运维
  • 云服务器搭建ftp服务器
    搭建云服务器的硬件需求 首先需要考虑的是云服务器所需的硬件设备。通常情况下,云服务器需要具备以下硬件设备: 1) 服务器主板:负责服务器的硬件设备,如CPU、内存、硬盘等; 2) 网络设备:用于连接云服务器与其他网络服务提供商,如Wi...
    99+
    2023-10-27
    服务器 ftp
  • Linux下搭建FTP服务器
    Linux下搭建FTP服务器 FTP协议:文件传输协议(File Transfer Protocol) 协议定义了一个在远程计算机系统和本地计算机系统之间传输文件的一个标准FTP运行在OSI模型的应用...
    99+
    2023-09-06
    linux 服务器 网络
  • windows怎么搭建ftp服务器
    要在Windows上搭建FTP服务器,您可以按照以下步骤进行操作:1. 打开控制面板并选择"程序"。2. 在"程序和功能"下,点击"...
    99+
    2023-10-10
    Windows
  • Linux FTP服务器如何搭建
    这篇文章主要介绍Linux FTP服务器如何搭建,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!首先我们看一下主要配置文件如下:/etc/VSFTPd/VSFTPd.conf 主配置文件/etc/VSFTPd.FTPu...
    99+
    2023-06-17
  • CentOS7 安装搭建FTP服务器
    CentOS7 安装搭建FTP服务器 1、FTP简介2、关闭防火墙3、安装FTP软件包4、新建用户和FTP目录5、配置ftp服务器6、重启并配置防火墙7、重启FTP服务8、访问测试 1...
    99+
    2023-09-16
    服务器 运维 linux
  • win7如何搭建ftp服务器
    本文小编为大家详细介绍“win7如何搭建ftp服务器”,内容详细,步骤清晰,细节处理妥当,希望这篇“win7如何搭建ftp服务器”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。win7ftp服务器搭建方法:首先点击...
    99+
    2023-07-01
  • 腾讯云服务器搭建ftp
    腾讯云服务器搭建FTP,可以选择使用虚拟主机或者云服务器,具体需要根据您的实际要求和预算来决定。 选择适合自己的虚拟主机。虚拟主机有多种类型,包括vps、自建主机、云主机等,价格和性能都不一样,建议根据自己的需求来选择合适的配置。 选择...
    99+
    2023-10-26
    腾讯 服务器 ftp
  • 云服务器怎么搭建ftp
    云服务器搭建ftp的方法:下载 Xlight ftp服务器软件安装在电脑主机上,运行后,就可以在界面中可以创建、修改、管理虚拟服务器。登录云服务器后,右键我的电脑打开“计算机管理”,添加一个新的用户,在用户列表中点击添加按钮,设置用户名、密...
    99+
    2022-10-09
  • centos7怎么搭建ftp服务器
    要在CentOS 7上搭建FTP服务器,可以按照以下步骤进行操作: 安装vsftpd软件包:打开终端并输入以下命令安装vsftp...
    99+
    2023-10-23
    centos7 服务器
  • 云服务ftp服务器怎么搭建
    搭建云服务FTP服务器可以按照以下步骤进行操作:1. 选择合适的云服务提供商:根据自己的需求选择合适的云服务提供商。2. 创建虚拟机...
    99+
    2023-09-25
    云服务器 ftp服务器
  • 在IIS服务器下搭建FTP服务
    为了实现文件局域网或远程共享与访问,在IIS服务器手动搭建一个FTP Server共享服务。 基于Windows 11 操作系统。 一、安装FTP服务 打开“控制面板”->双击“程序和功能”项,如下图:  在“程序和功能”窗口,点击左边栏“...
    99+
    2023-09-02
    服务器 windows FTP IIS
  • 阿里云服务器搭建ftp服务器
    阿里云服务器搭建FTP服务器可以按照以下步骤进行: 购买阿里云的服务器:可以从阿里云的官方网站上进行购买,购买后需要进行配置FTP服务器。 搭建FTP服务器:在购买服务器后,需要对FTP服务器进行配置。在配置FTP服务器之前,需要选择服...
    99+
    2023-10-26
    服务器 阿里 ftp
  • 云服务器怎么搭建ftp服务器
    要搭建云服务器上的FTP服务器,可以按照以下步骤操作:1. 选择合适的云服务器提供商,并创建一个服务器实例。2. 在服务器上安装FT...
    99+
    2023-08-18
    云服务器 ftp服务器
  • 云服务器如何搭建ftp服务器
    要搭建云服务器上的FTP服务器,可以按照以下步骤进行操作:1. 选择一个合适的云服务器提供商,并购买一个云服务器实例。确保选择的实例...
    99+
    2023-09-28
    云服务器 ftp服务器 服务器
  • 云服务器ftp服务器如何搭建
    搭建云服务器上的FTP服务器需要经过以下步骤:1. 选择云服务提供商:选择一家可靠的云服务提供商。2. 创建云服务器实例:在所选云服...
    99+
    2023-08-08
    云服务器
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作