zoukankan      html  css  js  c++  java
  • 转换python脚本为可执行程序的方式

    背景:

    部分工具使用python脚本编写,而目标服务器,没有安装python包,导致使用工具不方便,还需要另外安装python.

    目前主要有2个主流软件,可做此类转换,把对应工具脚本转换为exe;

    py2exe:缺点是和python 版本强相关,只能支持windows。

    pyinstaller:绿色,解压即可用,2.6以上的版本,只要额外安装一下python32扩展即可,支持所有python版本; 支持所有主流操作系统(如生成linux下可执行程序)。

    主要介绍下pyinstaller的使用

    官方介绍: http://www.pyinstaller.org/export/v2.0/project/doc/Manual.html

    下载绿色版解压: http://www.pyinstaller.org/

    pywin32扩展:http://sourceforge.net/projects/pywin32/files/

    转化成可执行程序的2种选择:

    单个文件 -- 即脚本和所有资源文件一起压缩成一个exe (需要额外下载upx程序)

    目录形式 -- 脚本和资源文件存在于一个目录或者目录树中

    由于我这里需要暴露配置文件给工具使用者修改,所以采用第二种方式

    以下为参考例子:

    源脚本目录: D:automan.scanFilePwd

    pyinstaller解压路径:F:softwaresoftwareworkpythonPyInstaller-2.1

    1、执行如下命令 生成初步的exe工具

    F:softwaresoftwareworkpythonPyInstaller-2.1>

    python pyinstaller.py D:automan.scanFilePwdautoman.scanFilePwd.py

    2、手工修改F:softwaresoftwareworkpythonPyInstaller-2.1automan.scanFilePwd下的automan.scanFilePwd.spec文件,执行需要增加的配置文件以及其他资源文件:

    coll = COLLECT(exe,
                   a.binaries,
                   a.zipfiles,
                   a.datas+[('config.ini','D:\automan.scanFilePwd\config.ini','DATA'), ('Cpu.class','D:\automan.scanFilePwd\Cpu.class','DATA'),('keyfile.txt','D:\automan.scanFilePwd\keyfile.txt','DATA'),('readme.txt','D:\automan.scanFilePwd\readme.txt','DATA'), ('run.bat','D:\automan.scanFilePwd\run.bat','DATA'), ('whiltfile.txt','D:\automan.scanFilePwd\whiltfile.txt','DATA')],
                   strip=None,
                   upx=True,
                   name='automan.scanFilePwd')

    3、再次执行转换命令,引入spec文件,添加资源文件到目标目录

    F:softwaresoftwareworkpythonPyInstaller-2.1>

    python pyinstaller.py ./automan.scanFilePwd/automan.scanFilePwd.spec

    完成:

    F:softwaresoftwareworkpythonPyInstaller-2.1automan.scanFilePwddistautoman.scanFilePwd

    最终这个目录下的所有内容,就是以automan.scanFilePwd.exe为核心的运行包;可以运行在没有安装python的机器上

  • 相关阅读:
    摹客 · Veer 第二届设计大赛邀你来战!
    企业官网原型制作分享-Starbucks
    12个最佳的响应式网页设计教程,轻松带你入门!
    摹客第二届设计大赛即将开幕——摹客,为设计喝彩!
    想入坑互联网产品经理,该如何从零做起?
    概率DP
    高斯消元
    树形DP

    01背包
  • 原文地址:https://www.cnblogs.com/scios/p/8400261.html
Copyright © 2011-2022 走看看