当前位置: 首页 > news >正文

厦门海沧区建设局网站关键词seo优化公司

厦门海沧区建设局网站,关键词seo优化公司,合肥生态建设职业培训学校网站,用html做网站目录 前言一、pyinstaller二、实践打包exe1、遇坑1:Plugin already registered2、遇坑2:OSError 句柄无效 三、总结 前言 你是否有这种烦恼? 别人在使用你的项目时可能还需要安装各种依赖包?别人在使用你的项目,可能…

目录

  • 前言
  • 一、pyinstaller
  • 二、实践打包exe
    • 1、遇坑1:Plugin already registered
    • 2、遇坑2:OSError 句柄无效
  • 三、总结

前言

你是否有这种烦恼?

  • 别人在使用你的项目时可能还需要安装各种依赖包?
  • 别人在使用你的项目,可能Ta压根都不会安装环境?
  • 共用服务机器,偶尔被别人改了依赖包版本,导致运行不起来?

我会发现每次搞这些都要耗费一大堆时间,于是想到以前也有打包过如exe文件直接执行。

一、pyinstaller

PyInstaller是一个用于将Python程序转换为独立的可执行文件的工具。使用PyInstaller,您可以将Python程序打包为单个可执行文件,该文件可以在没有Python解释器的计算机上运行。
以下是使用PyInstaller将Python程序打包为可执行文件的基本步骤:

1、确保已经安装了PyInstaller。如果没有安装,可以使用以下命令进行安装:

pip install pyinstaller

2、打开终端或命令提示符,并导航到包含您的Python程序的目录。

3、运行以下命令来将Python程序打包为可执行文件:

pyinstaller your_script.py

其中your_script.py是您的Python程序的文件名。

4、PyInstaller将在当前目录中创建一个名为dist的文件夹,其中包含生成的可执行文件。在Windows上,可执行文件将具有.exe扩展名,而在Linux和Mac上则没有扩展名。
截图
5、命令查看

pyinstaller --help
  • -F:将所有文件打包为一个单独的可执行文件。
  • -D:将所有文件打包为一个目录,包含可执行文件和所有依赖的文件。
  • -c:将程序与命令提示符结合在一起,以便在命令提示符下运行。
  • -d:将调试信息打包进可执行文件中。
  • –onefile:将所有文件打包为一个单独的可执行文件。
  • -o:指定输出文件的位置。
  • -w:打包为窗口文件。
  • -i:指定ico。

我最常用的为:

pyinstaller -F -i xxx.ico xxx.py

二、实践打包exe

pyinstaller -F -i ./desc/build.ico ppl.py

1、遇坑1:Plugin already registered

依赖一般都会打入,但是其中也有入到坑,比如 pytest

import pytest
from allure_pytest import plugin as allure_plugin
# pytest.main(argv)
pytest.main(argv, plugins=[allure_plugin])  # todo use package

当我打包时需要将 allure_plugin 依赖打入,但是当我在ide中运行又报错,于是只能改为:

import pytest
from allure_pytest import plugin as allure_plugin
pytest.main(argv)
# pytest.main(argv, plugins=[allure_plugin])  # todo use package

pytest.main(argv) 才得以解决,报错如下:
ValueError: Plugin already registered: allure_pytest=<module ‘allure_pytest.plugin’
错误截图


2、遇坑2:OSError 句柄无效

1、打包后执行exe发现以下错误:

Traceback (most recent call last):File "<string>", line 1, in <module>
OSError: [WinError 6] 句柄无效。

后看到是loguru日志模块报错:
也看到了此 issues 但是没有实际解决。

2、于是在运行时添加一个参数表示日志是否用 loguru
默认是用,如果添加参数 --colour=0 则表示不使用loguru。
部分代码改动如下:类 PplLog 打印 print 分别有使用到loguru的方法一致,这样代码改动最小了。
错误截图
3、打包测试
发现正常了,应该就是这个原因 issues 但貌似没有看到更好的解决办法,只能先这样了。
运行截图


三、总结

  • 打包后方便是方便到各种机器可一键运行了,但是你的一些改动可能又得重新打包,或者你看你会遇到各种各样的打包问题,也得花时间去解决。

  • 如果是linux、mac等机器下,那可能也得去有台宿主机才可以打包,目前没看到Windows下可以任意打包其它操作系统的。

  • 在代码解释器下运行没有问题,但不一定打包后没问题,比如少了依赖等也是比较难排查的。

我的代码地址:
github
gitee

在这里插入图片描述

http://www.hkea.cn/news/150938/

相关文章:

  • 设建网站广告投放渠道
  • 日ip5000的网站怎么做如何提高网站在搜索引擎中的排名
  • 网站描文本链接怎么做深圳互联网营销
  • 一个服务器做两个网站自己做网站
  • 百草味网站建设的活动方案营销型企业网站有哪些
  • 论文课程网站 建设背景项目推广方式有哪些
  • 内部网站建设关键词优化推广策略
  • 一个公司可以做几个网站备案贵阳网络推广排名
  • 武汉高端网站建设免费广告网
  • 大理建网站常用于网站推广的营销手段是
  • js怎么做网站跨境电商网站
  • 台州外贸网站建设百度推广费用多少
  • 虚拟机怎么做网站空间培训班管理系统 免费
  • wordpress离线文章发布郑州seo关键词排名优化
  • 龙岗区网站建设中国职业培训在线
  • 南山网站建设外包优化网站
  • 个人怎么做网站推广神起网络游戏推广平台
  • 做网站的关键技术运营推广的方式和渠道有哪些
  • jsp做就业网站网推项目
  • 网站开发的目的和意义重庆seo排名电话
  • 顺义专业建站公司最有效的线上推广方式
  • 大连网站网站搭建制作百度识图 上传图片
  • 给人做网站多少钱黑科技引流推广神器怎么下载
  • 沈阳做网站最好的公司百度快照怎么删除
  • 设置本机外网ip做网站网站免费制作平台
  • 有什么推荐做简历的网站2024的新闻有哪些
  • 申请做网站 论坛版主惠州seo外包服务
  • 网站照片上传不了域名解析ip
  • 胖小七网站建设2022最新国际新闻10条简短
  • wordpress 网站备份厦门seo外包服务