# python程序打包工具

# python程序打包工具

# 注:需要事先安装pyinstaller库并且保证能够正常运行。
## -*- coding: utf-8 -*-

# 选择需要打包的py代码文件后将打包的exe文件输出到当前路径

from os import system, remove, getcwd
from os.path import isfile, basename
from shutil import move, rmtree
from win32ui import CreateFileDialog

print("选择需要打包的py文件:")

# 打开文本选择框
dlg = CreateFileDialog(1)
# 设置文本选择框标题
dlg.SetOFNTitle("请选择需要打包的py文件")
# 将默认打开路径设置为当前路径
dlg.SetOFNInitialDir(getcwd())
dlg.DoModal()

# 获取需要打包的文件名
filename = dlg.GetPathName()
# 组装pyinstaller的cmd命令
command = "pyinstaller -F --noupx "+filename
# 开始使用pyinstaller打包
print("开始打包:")
system(command)

print("清理打包痕迹:")
filename = basename(filename).rstrip("py")
# 将打包完成的exe文件转移到当前路径,并且删除打包产生的spec文件,build与dist文件夹
# 如果已存在相同文件名的打包exe文件,则覆盖上一次的打包文件
if isfile(filename+"exe"):
    remove(filename+"exe")
move("dist/"+filename+"exe", getcwd())
remove(filename+"spec")
rmtree("build")
rmtree("dist")

print("运行结束。")

# 用这个打包工具也能打包它自己……

 

posted @ 2025-01-07 00:03  nxhujiee  阅读(33)  评论(0)    收藏  举报