#!/usr/bin/env python
# -*- coding:UTF-8 -*-
# @Time : 2019/5/18 0018 18:37
# @File : toExe.py
# @email : spirit_az@foxmail.com
__author__ = 'ChenLiang.Miao'
# +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ #
"""
图片引用路径可以设置为相对路径。
代码中,opts= 后面的列表里的就是一系列参数,详解如下:
file_path = os.path.dirname(__file__)
第一个***.py 要编译的文件名,必填 [之后的参数全部为选填]
第二个-F 生成单文件的参数
第三个--noconsole 取消cmd窗口
第四个--distpath=** dist文件夹(最后输出文件所在地)的路径,**为路径,比如os.path.join(file_path, 'dist').replace('\\', '/'),默认为当前目录下的dist文件夹内
第五个--workpath=** build文件夹(临时文件)的路径,**为路径,比如os.path.join(file_path, 'build').replace('\\', '/'),默认为当前目录下的build文件夹内
第六个--specpath=** ***.spec文件(临时文件)的路径,**为路径,比如file_path,默认为当前目录
第七个--y
第八个--clear
第九个--icon=** 输出的exe文件的图标路径,**为路径
"""
# import --+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ #
import os
from PyInstaller.__main__ import run
# proc function -+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ #
file_path = os.path.dirname(__file__)
# function main -+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ #
def main():
opts = ['installExe.py',
'-F',
'--noconsole',
'--distpath=%s' % os.path.join(file_path, 'dist').replace('\\', '/'),
'--workpath=%s' % os.path.join(file_path, 'build').replace('\\', '/'),
'--specpath=%s' % file_path,
'-y',
'--clean',
'--icon=%s' % os.path.join(file_path, 'spring.ico')
]
run(opts)
if __name__ == '__main__':
main()