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

黑龙江建设网网站百度集团官网

黑龙江建设网网站,百度集团官网,网络推广工具和方法,女人和男人做床上爱网站参考:https://blog.csdn.net/qq_48979387/article/details/132359366 一、参数说明 -F 最终打包为一个可执行文件。-w 取消Windows显示窗口-add-data ‘dll;dll’,将当前目录dll下的文件打包到可执行文件的dll中,最终会在解压文件的dll文件…

参考:https://blog.csdn.net/qq_48979387/article/details/132359366

一、参数说明

  1. -F 最终打包为一个可执行文件。
  2. -w 取消Windows显示窗口
  3. -add-data ‘dll;dll’,将当前目录dll下的文件打包到可执行文件的dll中,最终会在解压文件的dll文件下。

最终命令为:

pyinstaller.exe  -F -w --add-data 'dll/;dll/' --add-data 'ico/;ico/' .\xxx.py

二、资源嵌入exe

经常需要复制文件夹不仅麻烦,而且还无法防止里面的内容被用户修改。此时,我们可以使用pyinstaller的–add-data参数,将assets文件夹里面的资源嵌入到exe文件中。

资源嵌入exe只在单文件模式下使用。文件夹模式下,资源文件夹不会嵌入到exe中,但是会被复制到exe所在的文件夹。

使用资源嵌入后,资源文件夹的路径发生了变化,我们不能使用一般的相对路径来调用assets这样的内嵌资源文件夹。

pyinstaller单文件模式下的exe启动后,会将嵌入的资源文件放到一个临时的文件夹中,这个文件夹的名字不是固定的,叫做_MEIxxxxx,其中xxxxx是随机数。这个文件夹的路径在打包后会被放到sys._MEIPASS这个变量里面,只需要调用sys._MEIPASS就可以获得这个路径文件夹。

于是,我们通过以下函数返回正确的路径:

def get_path(relative_path):try:base_path = sys._MEIPASS # pyinstaller打包后的路径except AttributeError:base_path = os.path.abspath(".") # 当前工作目录的路径return os.path.normpath(os.path.join(base_path, relative_path)) # 返回实际路径

这个函数通过一个相对的路径返回实际的绝对路径。

需要注意:sys._MEIPASS这个属性只有在打包成exe后才被创建,以py代码执行的时候这个属性是不存在的,所以要通过try…except…代码块捕获异常。如果不是pyinstaller模式,那么就使用py文件所在的文件夹的路径作为基本路径。我们不必担心这个函数的工作原理,这个函数可以直接拿来用(是一位叫做davidpendergast的大佬写的)。

于是,我们将代码改成这样(省略了部分内容):

...import sys
import osdef get_path(relative_path):try:base_path = sys._MEIPASSexcept AttributeError:base_path = os.path.abspath(".")return os.path.normpath(os.path.join(base_path, relative_path))...image = tk.PhotoImage(file=get_path("assets/image.gif"))
...

接下来进行打包:

pyinstaller -w -F --add-data assets;assets my_app_name.py

打包完成后会生成一个包含嵌入资源的单独的exe,无需将资源文件放到同一文件夹下也能正常运行。

–add-data的参数由源文件名src和目标文件名dest组成。路径的源文件名和目标文件名用文件分隔符进行分隔,源文件名是该文件或文件夹的原本的路径,目标文件名是该文件夹嵌入到exe后的放入的文件夹名。

文件分隔符:在Windows系统上是分号,大部分unix系统上是冒号,可以通过os.pathsep来查看当前系统上的文件分隔符。例如:

import os
os.pathsep
‘;’

比如–add-data "assets;assets"就表示将原本assets里面的所有文件,放入打包后的assets文件夹。再比如–add-data "assets/*.mp3;music"表示将原本assets里面的所有mp3文件,放入打包后的music文件夹。

http://www.ds6.com.cn/news/78194.html

相关文章:

  • 惠州市做网站网络营销案例ppt
  • 科技公司做网站山西百度查关键词排名
  • 深圳有没有做网站的台州做优化
  • 教育网站制作方案电商怎么做
  • 郑州 做网站网站建设免费
  • 电子商务主要学什么就业方向及前景企业seo排名有 名
  • PHP是做网站最好的seo诊断工具有哪些
  • 在凡科做网站编辑广州各区风险区域最新动态
  • 做网站需要多刷外链工具
  • 怎么进behance设计网站百度投诉中心在线申诉
  • 方太产品站网站建设外贸如何推广
  • 东营做营销型网站建设南京seo外包平台
  • 邱县seo整站排名企业网站设计
  • 品牌网站制作流程图百度收录站长工具
  • 网站美工如何做推广网站
  • 学3dmax学费一般多少宁波做seo推广企业
  • 深圳宝安区深圳网站建设 骏域网络抖音推广运营公司
  • 江苏元鼎建设工程有限公司网站百度客服电话24小时
  • 橘子建站是什么网站引流推广软件
  • 太原制作网站的公司哪家好关键词优化方法有什么步骤
  • 吴江住房建设局网站抖音十大搜索关键词
  • 携程网站建设进度及实施过程免费的精准引流软件
  • 网站显示乱码怎么办链接交换平台
  • 如何做国外的电商网站设计广州seo网站服务公司
  • wordpress mysql配置seo优化效果
  • 9377游戏盒子谷歌seo
  • 网站做简历模板成全视频免费观看在线看
  • 网站做专题主题该怎么选百度代理加盟
  • 分类信息网站建设百度关键词优化公司哪家好
  • 政府网站机房建设要求ip子域名大全