前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python:通过pyftpdlib快速搭建ftp服务

Python:通过pyftpdlib快速搭建ftp服务

作者头像
Freedom123
发布2024-03-29 14:28:49
1710
发布2024-03-29 14:28:49
举报
文章被收录于专栏:DevOpsDevOps

简介

python工具库挺多的,最近想搭建一个ftp服务器,就是分享一下文件而已,功能简单,于是就搜索到了python的工具库——pyftpdlib

一、安装

1.安装 pyftpdlib库

代码语言:javascript
复制
pip install pyftpdlib

2.直接运行

代码语言:javascript
复制
python -m pyftpdlib

默认IP为 127.0.0.1 、端口为 2121 参数设置 -i 指定IP地址(默认为本机的IP地址) -p 指定端口(默认为2121) -w 写权限(默认为只读) -d 指定目录 (默认为当前目录) -u 指定用户名登录 -P 设置登录密码

二、通过python简单使用

代码语言:javascript
复制
#同时使用pandas读取xlsx文件,配置账号、密码、路径和权限
from pyftpdlib.authorizers import DummyAuthorizer
from pyftpdlib.handlers import FTPHandler
from pyftpdlib.servers import FTPServer
import pandas as pd

#读取用户配置文件,可以用其他格式的文件,请随意
df = pd.read_excel('user.xlsx')

# 实例化DummyAuthorizer来创建ftp用户
authorizer = DummyAuthorizer()
# 参数:用户名,密码,目录,权限
for index,row in df.iterrows():
	authorizer.add_user(row['账户'], row['密码'], row['路径'], perm=row['权限'])
	
#设置一个匿名登录
#authorizer.add_anonymous('/home/nobody')

#创建FTPHanddler实例
handler = FTPHandler
handler.authorizer = authorizer
# 参数:IP,端口,handler
server = FTPServer(('0.0.0.0', 8800), handler)
server.serve_forever()

读取权限:

代码语言:javascript
复制
"e" ——更改目录(CWD,CDUP命令)
"l" ——列表文件(LIST,NLST,STAT,MLSD,MLST,SIZE命令)
"r" ——从服务器检索文件(RETR命令)

写入权限:

代码语言:javascript
复制
"a" ——将数据追加到现有文件(APPE命令)
"d" ——删除文件或目录(DELE,RMD命令)
"f" ——重命名文件或目录(RNFR,RNTO命令)
"m" ——创建目录(MKD命令)
"w" ——将文件存储到服务器(STOR,STOU命令)
"M"——更改文件模式/权限(SITE CHMOD命令)
"T"——更改文件修改时间(SITE MFMT命令)

格式就是在 authorizer.add_user(row[‘账户’], row[‘密码’], row[‘路径’], perm=row[‘权限’])里面,perm=‘elradfmwMT’

小结

python还有一个自带的,可以快速搭建一个http服务器,其实也类似是ftp,可以实现文件共享,一行代码即可搞定,在CMD中输入“python -m http.server 8080”即可开启服务器,可在浏览器下载该目录下的文件,简单粗暴。

参考地址:https://blog.csdn.net/younger_LF/article/details/122449580

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024-03-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简介
  • 一、安装
  • 二、通过python简单使用
  • 小结
相关产品与服务
文件存储
文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档