0x01 序言
这段时间,需要写一个自动化配置工具,用C++来写未免太臃肿,遂选择python。写起来确实方便快捷不少。
写完以后要发布,就遇到了一个问题。这个脚本需要python解释器来运行,然后很多Windows服务器上可能未必安装了python,所以就想起来py2exe
0x02 note
- 通过pip安装py2exe第三方库
- py2exe 新版本只支持python3.3以上,可以使用
pip install py2exe_py2
来安装兼容python2版本 - 并且在python3.6版本下运行报错,后来换成python3.4便成功
(py2exe版本问题)
- 通过设置setup参数,可以优化生成的路径,去除不必要的文件
- 生成后,需要手动将msvcr100.dll拷到生成目录下
(dist目录)
- python3如果是64位,生成的exe只能在64位操作系统下运行,使用32位python可以解决
0x03 usage
python setup.py py2exe
0x04 example
未优化setup.py
脚本:
# -*- encoding:utf-8 -*-
from distutils.core import setup
import py2exe
setup(console = ['TomcatConfigTools.py'])

优化后setup.py
脚本:
# -*- encoding:utf-8 -*-
from distutils.core import setup
import py2exe
INCLUDES = []
options = {
"py2exe" :
{
"compressed" : 1,
"optimize" : 2,
"bundle_files" : 2,
"includes" : INCLUDES,
"dll_excludes" : []
}
}
setup(
options = options,
description= "tomcat网站狗辅助配置",
zipfile=None,
console = [{"script":'TomcatConfigTools.py'}])

网友评论