zoukankan      html  css  js  c++  java
  • Python 打包发布exe可执行文件

    Python 代码写完后有时候需要打包成exe可执行文件,以便于在windows 系统下运行。

    好处:打包后的exe文件可用直接独立运行,目标服务器不需要单独安装python 环境

    打包方式:

    1. 安装pyinstaller,可使用pip进行安装

    2. 执行pyinstaller 命令进行打包

      例如:pyinstaller your_py_main_file.py -p your_code_folder_paht;your_python_venv_path

      your_py_main_file.py:需要执行的python文件,如果是项目多个文件,一般写项目入口文件即可

      your_code_folder_paht:如果是python项目,有多个文件配置,你项目的根目录

      your_python_venv_path:由于python需要安装一些组件,这里可用配置你python组件的安装路径,如:c:/python3.7/python_data_testlibsite-packages

    执行后生成的目录如下:

    build:打包时用到的文件信息

    dist:打包好的exe文件信息,其中不包括第三方包和自定义模块,pyinstaller 还有参数可自行百度,添加-F 会只生成一个exe文件,所有文件都封装在exe中,不指定则会生成更多文件信息,其中的exe文件即为可以运行的打包文件

    your_py_main_file.spec:项目打包生成的配置信息,可以修改配置Analysis节点的datas用来设置指定需要的文件信息,如第三方模块或者自定义模块代码,指定后打包复制到dist文件夹中

    问题:

    1.打包时只能打包python相关的文件,不包括配置文件,需要手动复制过去

    2.指定pip安装目录后,也只包好python官方包的文件信息,第三方的不会打包到dist目录中,如果用到了第三方包需要手动复制过去,或通过调整

    3. 如果打包后运行报错,需要看错误信息,提示缺少配置文件或者模块信息,手动复制放入打包后的文件中即可

    导报完成后点击exe文件即可在没有安装python环境的windows文件下执行

    简单记录,以便备忘。

  • 相关阅读:
    adb 连接时候不弹出授权对话框【转】
    Android设备adb授权的原理【转】
    JDK-Logger
    使用xpath时出现noDefClass的错误(找不到某个类)
    Netty系列之Netty 服务端创建
    windows 如何查看端口占用情况?
    解决Apache/PHP无法启动的问题
    多个mysql解决方法
    Qt 静态编译后的exe太大, 可以这样压缩.
    烈焰SWF解密
  • 原文地址:https://www.cnblogs.com/binw/p/13410000.html
Copyright © 2011-2022 走看看