Alex的博客

本博客的文章均为原创,是本人从事行业多年来所遇见一些小问题的解决心得,希望可以帮助到大家!



pyinstaller打包python程序

pip install pyinstaller

pyinstaller -F -w -c --icon="test.ico" test.py
-F
打包成一个exe文件
-w
使用窗口,无控制台
-c
使用控制台,无窗口
-D
创建一个目录,里面包含exe以及其他一些依赖性文件
--icon=”图标路径”

还有一些可以通过pyinstaller -h 来查看参数


打包工具 PyInstaller >3.2 新加入一个加密参数 --k ,用户可自定义一个16位密钥, 例:python.exe  pyinstaller.py --k=xxxxxxxxxxxxxxxx --clean  xxx.py关于这个功能,个人理解是加密后没有密钥第三方解不出pyc(pyo)文件 ,也就无从反编译,当执行exe文件时,打包工具将加密的字节码送入内存解密运行.但是pyinstaller所用加密模块是开源的PyCrypto,理论上高手还是能想办法的,不过聊胜于无,就算是c程序只要花时间也能被反汇编,pyinstaller这个新参数可以加大破译难度,增加破解成本


关于 Nuitka, 是把 python代码转成c++代码然后静态编译成二进制文件,比第一种方案稍麻烦一点,但据说可以提升执行速度

浏览639  评论0  Alex于 2018-1-10 21:39
发言