python3带tkinter窗口的ftp服务器,并使用pyinstaller打包成exe
python带tkinter窗口的ftp服务器,使用python3编写,打包使用pyinstaller,命令 pyinstaller -F .\ftpserver.py
代码也可在我的github上下载
话不多说 直接贴代码:
1 from tkinter import * 2 from pyftpdlib.authorizers import DummyAuthorizer 3 from pyftpdlib.handlers import FTPHandler 4 from pyftpdlib.servers import FTPServer 5 import _thread 6 import sys 7 8 root = Tk() 9 root.title("ftpserver") 10 11 def run(): 12 _thread.start_new_thread ( ftpserver, ()) 13 14 def exitftp(): 15 sys.exit(0) 16 17 def ftpserver(): 18 19 20 #实例化虚拟用户,这是FTP验证首要条件 21 authorizer = DummyAuthorizer() 22 23 #添加用户权限和路径,括号内的参数是(用户名, 密码, 用户目录, 权限) 24 authorizer.add_user(var1.get(), var2.get(), '.', perm='elradfmw') 25 26 #添加匿名用户 只需要路径 27 authorizer.add_anonymous('.') 28 29 #初始化ftp句柄 30 handler = FTPHandler 31 handler.authorizer = authorizer 32 33 #监听ip 和 端口,因为linux里非root用户无法使用21端口,所以我使用了2121端口 34 server = FTPServer((var3.get(), var4.get()), handler) 35 36 #开始服务 37 server.serve_forever() 38 39 #下面这些是对最开始的时候创建的tk进行行列式填充 label为文本 entry为输入框 40 L1 = Label(root,text = 'UserName:').grid(column = 0,row = 0) 41 var1 = StringVar() 42 E1 = Entry(root,textvariable = var1, bd = 2).grid(column = 1,row = 0) 43 var1.set("admin") 44 user = var1.get() 45 46 L2 = Label(root,text = 'Password:').grid(column = 0,row = 1) 47 var2 = StringVar() 48 E2 = Entry(root,textvariable = var2, bd = 2).grid(column = 1,row = 1) 49 var2.set("123456") 50 password = var2.get() 51 52 L3 = Label(root,text = 'IP Address:').grid(column = 0,row = 2) 53 var3 = StringVar() 54 E3 = Entry(root,textvariable = var3, bd = 2).grid(column = 1,row = 2) 55 var3.set("0.0.0.0") 56 ipaddr = var3.get() 57 58 L4 = Label(root,text = 'PortNumber:').grid(column = 0,row = 3) 59 var4 = StringVar() 60 E4 = Entry(root,textvariable = var4, bd = 2).grid(column = 1,row = 3) 61 var4.set("2121") 62 port = var4.get() 63 64 Button1 = Button(root,text = "RunFtpserver",command=run).grid(column = 0,row = 4) 65 Button0 = Button(root,text = "Exit",command=exitftp).grid(column = 1,row = 4) 66 root.mainloop()
完成效果如下图所示:
转载于:https://www.cnblogs.com/ryan255/p/5426846.html
python3带tkinter窗口的ftp服务器,并使用pyinstaller打包成exe相关推荐
- 用tkinter写出you-get下载器界面,并用pyinstaller打包成exe文件
写在前面:本文为笔者最早于 2019-05-11 23:15 以"@拼命三郎"的身份发表于博客园 本文为原创文章,转载请标明出处 一.you-get介绍 you-get是一个基于 ...
- python3打包exe_[求助]入坑学习python 需要装pyinstaller打包成exe
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 E:\Python>pyinstaller -F E:\Python\123.py 142 INFO: PyInstaller: 3.2.1 142 ...
- python3.7打包exe坑_[求助]入坑学习python 需要装pyinstaller打包成exe
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 E:\Python>pyinstaller -F E:\Python\123.py 142 INFO: PyInstaller: 3.2.1 142 ...
- python tkinter界面 多进程启动scrapy爬取百度贴吧的回复,显示爬取进度,并可以搜索回帖人,指定时间生成词云图,用pyinstaller打包成exe(七)
爬取单个帖子one_tiezi_spider.py ''' 这个是爬取 单个帖子的爬虫 大概思路: 1.进入该帖子的第1页,获取帖子的初始信息(标题.发帖人.tid.总页数)等 ...
- python使用 tkinter + you-get 实现视频下载器以及 pyinstaller 打包时的问题
文章目录 github地址 实现思路 pyinstaller 打包成 exe UI 左上角图标 运行效果 代码 github地址 https://github.com/jnxxhzz/you-get- ...
- 解决python3.7.2中pyinstall打包成exe文件工具的问题
首先介绍一下可以打包Python代码的工具: py2exe: 这个是知名度最高的,但是好像不太适合新手,需要各种库,用起来比较繁琐,不推荐. pyinstaller : 可以只是生成单独的可执行程序 ...
- python tkinter库、添加gui界面_使用Python中tkinter库简单gui界面制作及打包成exe的操作方法(二)...
使用Python中tkinter库简单gui界面制作及打包成exe的操作方法(二),创建一个,界面,布局,文件,路径 使用Python中tkinter库简单gui界面制作及打包成exe的操作方法(二) ...
- python自带编译器如何生成exe_别再问我怎么Python打包成exe了!
也许我们不一定是专业的程序员,但是我们仍然可以通过代码提高我们的效率,尽量少加班,多陪陪媳妇.再不行,让代码替我们干着重复的工作,我们有节省出来的时间打游戏不好嘛,是吧,哈哈哈. 但是呢,我们开发的脚 ...
- python——生成带logo的二维码图片并且保存、控制打印机打印图片二维码、整合打印(获取输入框的值)、打包成exe文件
1.生成带logo的二维码图片并且保存 前提条件:在D盘里有logo.png的图片,生成的二维码图片在D盘里的111.png import qrcode from PIL import Image# ...
- 将python3.1+pyqt4打包成exe
将python打包成exe的程序有很多,比如py2exe.PyInstaller等等,但是到目前为止,它们对python3.1支持的都不好,所以这里我要介绍一下cx_freeze 4.2.2,它还能支 ...
最新文章
- 2022-2028年中国数码相机行业投资分析及前景预测报告
- 组合特征(二)tfidf(word+article)+lsa
- 中国各地高考难度地图:上大学最难的省份是哪里!?
- PXE新手经典思路引导
- switch( )的经典引用
- 【数据结构与算法】之深入解析“复原IP地址”的求解思路与算法示例
- easyui datagrid java_EasyUI DataGrid 显示不了数据????
- ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
- Java SringBoot demo
- loj10036. 「一本通 2.1 练习 2」Seek the Name, Seek the Fame
- 布局的几种方式(静态布局、自适应布局、流式布局、响应式布局、弹性布局)...
- 关于官方Reachability Demo理解
- 在JavaScript中实现继承的几种方式
- java做界面_java怎么做出界面?实例讲解
- 如何在linux系统下的抓包文件保存在u盘里,在xp系统中打开,【Linux】Wireshark在Linux系统下的安装及使用...
- lhgdialog的弹出框操作
- 万字长文剖析架构设计全攻略(上)
- Linux实验整理——vi编辑器使用、文件显示和处理命令
- 用Python帮老哥选出好基金,稳赚一笔,老哥专门提着茅台登门拜访
- SpringBoot35-分布式系统开发-spring cloud1