将python flask项目打包成可以用运行的软件(包含报错解决)

这篇具有很好参考价值的文章主要介绍了将python flask项目打包成可以用运行的软件(包含报错解决)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

将python flask项目打包成可以用运行的软件(包含报错解决)

准备好要打包的flask项目,如下图run.py文件的代码
将python flask项目打包成可以用运行的软件(包含报错解决),web开发,python,flask,开发语言,打包项目
导入打包函数库pyinstaller

pip install pyinstaller

执行打包指令,参数如下表所示

命令 解释
pyinstaller -F run.py 只在dist文件夹中生成一个程序run.exe文件,适用于一个模块没有多依赖.py文件
pyinstaller -D run.py 默认选项,除了主程序run.exe外,还会在在dist文件夹中生成很多依赖文件
pyinstaller -C run.py 默认选项,只对windows有效,使用控制台
pyinstaller -w run.py 只对windows有效,不使用控制台
pyinstaller -p D:\project\run.py 设置导入路径
pyinstaller -i D:\run.ico demo.py 给生成的demo.exe文件设置一个自定义的图标

推荐执行

pyinstaller -D run.py

如果项目里的引入的函数库很多的话需要执行一段时间
执行成功后会出现build和dist两个文件夹和一个run.spec(这个文件后面会说明用处),并且在dist/run下有一个run.exe,这个就是打包好的flask项目的可执行程序了,但是到这里还没有结束,需要双击run.exe来测试是否打包成功,双击会出现两种情况
①双击后产生如下的黑框框,那么说明打包程序没有问题,可以正常启动,这个时候可以使用api测试软件来测试一下程序是否没有问题。
将python flask项目打包成可以用运行的软件(包含报错解决),web开发,python,flask,开发语言,打包项目

②双击后快速弹出了黑框框之后就消失了,说明打包程序有报错,没有办法顺利启动,这个时候就需要去找到报错原因了,
在Terminal中找到run.exe所在的目录,执行run.exe
将python flask项目打包成可以用运行的软件(包含报错解决),web开发,python,flask,开发语言,打包项目
比如我这里就是产生了如下报错
将python flask项目打包成可以用运行的软件(包含报错解决),web开发,python,flask,开发语言,打包项目
通过看报错原因可以知道代码中少了damageLib.bases.damageState函数库(其他项目也可能会出现 No module named 'xxxxx’的报错,解决办法都是一样的),所以需要到run.spec中来添加这个函数库。
打开run.spec,可以看到如下

# -*- mode: python ; coding: utf-8 -*-
block_cipher = None
a = Analysis(
    ['run.py'],
    pathex=[],
    binaries=[],
    datas=[],
    hiddenimports=[],
    hookspath=[],
    hooksconfig={},
    runtime_hooks=[],
    excludes=[],
    win_no_prefer_redirects=False,
    win_private_assemblies=False,
    cipher=block_cipher,
    noarchive=False,
)
pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher)

exe = EXE(
    pyz,
    a.scripts,
    [],
    exclude_binaries=True,
    name='run',
    debug=False,
    bootloader_ignore_signals=False,
    strip=False,
    upx=True,
    console=True,
    disable_windowed_traceback=False,
    argv_emulation=False,
    target_arch=None,
    codesign_identity=None,
    entitlements_file=None,
)
coll = COLLECT(
    exe,
    a.binaries,
    a.zipfiles,
    a.datas,
    strip=False,
    upx=True,
    upx_exclude=[],
    name='run',
)

这里主要是在hiddenimports=[]中添加对应的函数库(如果项目中有需要用到其他文件夹的时候也会报错,那么就在datas=[]中添加就行,示例如下datas=[(“yolo/*”,“yolo”) 意思就是把yolo文件夹打包到程序中)
因为刚才是缺少了damageLib.bases.damageState,那么这里就改成hiddenimports=[“damageLib.bases.damageState”]
这个时候重新打包需要用到的指令如下(在运行过程中需要输入‘y’,因为要覆盖之前打包失败的文件)

pyinstaller run.spec

将python flask项目打包成可以用运行的软件(包含报错解决),web开发,python,flask,开发语言,打包项目
之后的操作跟之前一样,双击run.exe来看看程序能不能顺利启动,如果还会闪退黑框框,那么就再执行上面的操作来找到报错原因,直到最后能顺利的启动项目。
最后一步,使用nsis把文件夹打包成windows的安装包
进入官网https://nsis.sourceforge.io/Download进行下载,这里建议使用外网下载。
将python flask项目打包成可以用运行的软件(包含报错解决),web开发,python,flask,开发语言,打包项目
之后傻瓜式安装。
将python flask项目打包成可以用运行的软件(包含报错解决),web开发,python,flask,开发语言,打包项目
点击进入这里,在此之前,要将之前项目中的dist/run下的所有文件压缩成run.zip,随后在这里加载刚才的run.zip,并点击Generate后可以了(点击之后会进入新的界面,这个界面会卡很久很久,一定要耐心等待,完成后会在dist文件夹下出现一个run软件,把这个发送给别人安装就可以顺利执行了)
将python flask项目打包成可以用运行的软件(包含报错解决),web开发,python,flask,开发语言,打包项目文章来源地址https://www.toymoban.com/news/detail-826198.html

到了这里,关于将python flask项目打包成可以用运行的软件(包含报错解决)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • python 打包项目(包含.ui文件,.dll文件)为exe可执行文件

    目录 1. 背景 2. 生成.spec文件: 3. 编辑.spec文件: 4. 最后生成单个可执行文件.exe:  5 补充: 1. 背景         最近在项目中想做一个用于烧录MCU的上位机给工厂用。于是在某工程模板上简单开发了一个基于python 和pyQt5的上位机软件。项目包含多个.py文件,多个.dll文件,一

    2024年02月16日
    浏览(45)
  • 将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure

    前情提要:首先创建一个简单的Flask项目,参考上一篇文章 链接: 将 Python (Flask) Web应用部署到Azure应用服务 下载链接:Install Docker Desktop on Windows 如果出现以上弹窗,点击链接,安装Linux 内核更新包 运行下载的更新包(系统将提示你提供提升的权限,选择“是”以批准此安装

    2024年02月09日
    浏览(61)
  • python可以在安卓上运行吗,安卓平板python编程软件

    大家好,小编来为大家解答以下问题,python程序能不能在安卓手机上跑,python能在安卓平板上运行吗苹果,今天让我们一起来看看吧! 对于大部分初学Python的人来说,由于工作、生活等因素常常无法进行连贯、系统的学习python绘制满天星教学设计。初学者为了利用上下班通勤

    2024年01月23日
    浏览(98)
  • 【python】flask各种版本的项目,终端命令运行方式的实现

    ✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN新星创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全栈,前后端开

    2024年03月27日
    浏览(42)
  • 【快速解决】python项目打包成exe文件——vscode软件

    目录 操作步骤 1、打开VSCode并打开你的Python项目。 2、在VSCode终端中安装pyinstaller: 3、运行以下命令使用pyinstaller将Python项目打包成exe文件: 其中your_script.py是你的Python脚本的文件名。 4、打包完成后,在你的项目目录中会生成一个dist文件夹,里面包含了打包后的可执行文件

    2024年02月19日
    浏览(46)
  • 一键打包,随时运行,Python3项目虚拟环境一键整合包的制作(Venv)

    之前我们介绍了如何使用嵌入式 Python3 环境给项目制作一键整合包,在使用嵌入式 Python 环境时,通常是作为另一个应用程序的一部分,而Python3虚拟环境是为了在开发过程中隔离项目所需的 Python 环境。虚拟环境允许我们在同一台计算机上的不同项目中使用不同的 Python 版本和

    2024年02月04日
    浏览(47)
  • 如何把本地flask项目(框架)上传到服务器(Linux),并后台持续运行(包括requirements文件生成,python项目与域名绑定,保姆级教程)

     2023年中旬,参加了一个比赛,需要搭建一个网站。在不断探索琢磨之后,搭建了一个基于flask的web。直接上干货: 一、首先,在本地准备好自己的flask项目。包括最基本的三个文件: 然后准备生成requirements.txt文件,这个文本文件会告诉服务器你的项目运行所需要的环境,即

    2024年02月04日
    浏览(50)
  • 将本地Python项目打包成docker镜像,上传到服务器,在docker中运行

    windows11 Docker下载地址:https://docs.docker.com/desktop/install/windows-install/ 虚拟环境可以搭建独立的Python运行环境,使得单个项目的运行环境与其他项目互不影响。 安装完成之后,便可以直接创建虚拟环境了,使用命令 virtualenv env1 进行创建 其中 activate.bat 文件,表示激活虚拟环境。

    2024年02月11日
    浏览(54)
  • VS2019 打包桌面应用程序详细步骤,包含运行环境(.NET Framework)

    本篇教程基于VS扩展插件Microsoft Visual Studio Installer Projects工具来打包, 在VS工具中进行安装,菜单栏【扩展(X)】 -- 【管理扩展】,在界面中输入Installer,找到Microsoft Visual Studio Installer Projects,点击下载 在解决方案上右键 –【添加】--【新建项目】– 【Setup Project】,

    2024年02月04日
    浏览(61)
  • [Spring Boot] 开发时可以运行,但Maven打包后,无法运行

    问题:开发过程中一切正常,但在打包后,使用java -jar运行jar包时报错 Exception in thread \\\"main\\\" java.lang.UnsupportedClassVersionError: org/springframework/boot/loader/JarLauncher has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versi

    2024年02月10日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包