Python FTP服务器

# pip install pyftpdlib
from pyftpdlib.authorizers import DummyAuthorizer
from pyftpdlib.handlers import FTPHandler
from pyftpdlib.servers import FTPServer
import os

def getIP():
    '''
    通过执行命令:ipconfig,获取当前电脑的IP地址
    '''
    con = os.popen('ipconfig').read()
    lines = con.split('\n')
    for line in lines:
        if 'IPv4 地址' in line or 'IPv4 Address' in line:
            ip = line.split()[-1]
            return ip

def ftpServer(ip,port,name,password,path,permission):
    #实例化虚拟用户,这是FTP验证首要条件
    authorizer = DummyAuthorizer()

    #添加用户权限和路径,括号内的参数是(用户名, 密码, 用户目录, 权限)
    authorizer.add_user(name, password, path, perm=permission)

    # #添加匿名用户,赋予匿名用户可以访问的目录
    # authorizer.add_anonymous('E:/')

    #初始化ftp句柄
    handler = FTPHandler
    handler.authorizer = authorizer

    #监听ip 和 端口
    server = FTPServer((ip,port), handler)

    #开始服务
    server.serve_forever()

if __name__ == '__main__':
    # 默认使用8888端口
    port = 8888
    ip = getIP()
    print('=========================== Address:  ftp://%s:%s  =======================\n' % (ip, port))
    ftpServer(ip,port,name='wzt',password='wzt',path='E:/',permission='elradfmwMT')
    

猜你喜欢

转载自www.cnblogs.com/wztshine/p/12116807.html