码迷,mamicode.com
首页 > 编程语言 > 详细

【python练习】基于socket的FTP程序(仅支持单用户)

时间:2018-08-29 21:24:16      阅读:198      评论:0      收藏:0      [点我收藏+]

标签:断点续传   进度   传输   日志记录   ogg   tin   下载的断点续传   文件传输   reg   

程序功能

本程序模拟实现了一个FTP程序:
1.程序分为客户端和服务端
2.用户可以登录和注册账号,登录密码有MD5加密
3.每个用户有自己的家目录 ,且只能访问自己的家目录
4.用户可以随意切换目录(仅限自己的家目录)
5.允许用户查看当前目录下文件
6.允许上传和下载文件,保证文件一致性(md5),(不允许下载/上传文件夹,会出现不可恢复bug,用户配置文件需要重置。时间原因没有加判断)
7.文件传输过程中显示进度条
8.支持文件上传、下载的断点续传

测试:

数据为空,需要手动创建添加
1.需要自行注册账号
2.本地上传的文件,应放在client\db\用户名\uploads中
3.下载的文件会自动存储在client\db\用户名\downloas中
4.不能下载/上传文件夹,会出现不可恢复bug

程序结构:

FTP/
└── ├── README 
    ├── client # 客户端程序目录
    └── server # 服务端程序目录
FTP/client/
└── ├── conf # 配置文件
    │   ├── init.py
    │   └── settings.py
    ├── core # 主要程序逻辑都
    │   ├── init.py
    │   ├── login.py        # 登陆模块
    │   ├── main.py         # 主逻辑交互程序
    │   └── register.py     # 注册模块
    ├── db #用户数据存储的地方
    │    └── disk # 存放各用户上传\下载文件
    │       ├── 用户名文件1 # 用户名文件
    │       │       ├── downloads # 下载的文件存放目录
    │       │       └── uploads # 需要上传的文件目录
    │       └── 用户名文件2 # 用户名文件
    │               ├── downloads # 下载的文件存放目录
    │               └── uploads # 需要上传的文件目录
    └── FTP_client # client端程序主入口
FTP/server/
└── ├── conf # 配置文件
    │   ├── init.py
    │   └── settings.py
    ├── core # 主要程序逻辑都
    │   ├── init.py
    │   ├── logger.py       # 日志记录模块
    │   ├── login.py        # 登陆模块
    │   ├── main.py         # 主逻辑交互程序
    │   └── register.py     # 注册模块
    ├── db #用户数据存储的地方
    │   ├── accounts.ini  # 用户配置文件,存放账号、密码(MD5)
    │   └── disk # 存放各用户上传\下载文件
    │        ├── 用户名文件1 # 用户名文件
    │        │       ├── downloads # 下载的文件存放目录
    │        │       └── uploads # 需要上传的文件目录
    │        └── 用户名文件2 # 用户名文件
    │                ├── downloads # 下载的文件存放目录
    │                └── uploads # 需要上传的文件目录
    └── logs #日志目录
    │   ├── init.py
    │   └── access.log #用户访问和操作的相关日志
    └── FTP_server # server端程序主入口

【python练习】基于socket的FTP程序(仅支持单用户)

标签:断点续传   进度   传输   日志记录   ogg   tin   下载的断点续传   文件传输   reg   

原文地址:https://www.cnblogs.com/q1ang/p/9556646.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!