python安装pyinstaller失败,pyinstaller安装方法

  python安装pyinstaller失败,pyinstaller安装方法

  说明使用pyinstaller打包py文件时,允许exe时需要没有控制台。这并不是一个很难的操作,但是打包之后,如果允许exe,就会显示脚本xxx.exe执行失败的错误信息,原因和解决方案要到下午才能知道。

  根据打包时输入的参数,可以将初步知识打包成不同的类型。首先,你需要大致了解一些常用参数。理解解决方案可能会有所帮助:

  -dcreate one-FileBundledeExecutable(创建包含可执行文件的单个文件夹包,换句话说,就是打包出来的程序,会是一个文件夹,里面包含了许多的依赖文件等等,和一个exe可执行文件,就像windows的许多软件一样的形式。)。

  -fcreateaone-filebundled executable(创建绑定到单个文件的可执行文件,换句话说,就是只会打包出一个exe可执行文件,没有多余的文件。)。

  wwindowsandmacosx:donotprovideoconsolewindow

  for standardi/o . onmacosxthisalstriggers

  building anosx . app bundle . onwindowsthisoption

  willbesetifthefirstscriptisa。pywfile.this

  optisignoredinixsystems(windows和Mac OSX:不提供控制台窗口的标准i/o。Mac OS X也将触发OS X .app包的生成。在Windows上选择此选项。如果第一个脚本是,请设置。Pyw”文件。NIX系统会忽略此选项。简而言之,在windows上运行时不显示cmd窗口。)

  示例最简单的包#这是最简单的包pyinstaller main.py在参数-D 中添加了-D的包可以理解为第一种打包方法。-D是默认值,所以效果同上。打包后,main.py路径下还有一个dist文件夹。dist文件夹下有一个主文件夹。当你打开它的时候,它会像大多数windows软件一样包含运行时需要的依赖文件,但是会有一个main.exe文件。将-F添加到“ pyinstaller -D main.py使用参数-F ”。可以理解为这是第二种打包方法,不能和-D同时使用。打包后,main.py路径下还有一个dist文件夹,但是dist文件夹下只有一个main.py可执行文件。 pyinstaller -F main.py使用参数-w 无论您使用-F还是-D参数,打包的exe文件都会在运行时自动打开cmd窗口。如果想在不影响程序执行的情况下关闭,必须在打包时添加-w参数。-F或-D可以与-w参数结合使用,以在运行时关闭打开的cmd窗口。生成的文件。pyinstaller -F -w main.py#或者pyinstaller -D -w main.py打包的spec文件每次我们打包的时候都会生成dist和spec。

  3358 www.Sina.com/#"-*-模式:python编码3360 utf-8-*-block _ cipher=nonea=analysis([ main . py ]),pathex=[ c:_ _ SERS hyt hit win _ no _ prefer _ redirects=False,walse no archive=False(pyz=pyz(a . pure,a.zipped_data,cipher=block

  Loader _ ignore _ signals=false,strip=false,upx=true,upx _ exclude=[],runtime _ tmpdir=none,console=true)这段代码我们需要知道的是,console的值代表运行时是否打开cmd窗口。而hiddenimports可以帮助我们解决很多错误信息。我们可以修改。spec文件然后打包两次,这样快多了。格式如下:注意不是main.py,而是main.spec比如把原来的console=True改成console=False然后打包,cmd窗口就不显示了。pyinstaller常见错误-D -w main.spec打包完成,不代表打包成功。这也是为什么有时候生成的exe文件无法运行的原因。当你需要为仔细观察打包过程的日志信息,往往会有一些报错信息藏在里头,通过这些报错信息,可以很高效的在网上搜索到解决方法。打包一个没有命令行窗口的exe时,不要一上来就加上-w参数,因为这可能会导致你无法查看。当我们执行带cmd窗口的exe时,即使报错了,也可以在cmd窗口看到报错信息,根据报错信息找到对应的解决方法,然后再进行二次打包,并加上-w参数,就可以完美的打包出一个可以运行的无cmd窗口的exe文件了。解决方案:当发现打包后的exe无法运行,并报告一个无法执行脚本xxx.exe时,可以去掉-w参数,重新打包。再次运行后,您可以捕捉到错误消息。的常见错误信息如下:没有这样的文件或目录: c:\ \ users \ \ hyt \ \ appdata \ \ local \ \ temp \ _ mexx \ \ xx \ xx错误。关于这个错误,一个可行的解决方案是替换pyinstaller下的hooks文件,添加一些缺失的module

  详细的修改方法,请查看Boss的博客。点击这里一个可行的包装流程。1.首先,打包一个可以在没有-w参数的情况下显示cmd窗口的exe,并运行测试。2.注意cmd窗口的日志信息。如果出现错误消息,请修改。spec文件和hooks-xx.py文件按照上面的方案。3.确认程序正确后,修改的控制台。spec文件设置为False,然后重新打包。规格文件。-F -D打包exe的区别-F打包exe通常比-D打包exe占用空间大很多,启动速度也会快很多,但是只有一个EXE,没有多余的文件,使用起来相对方便。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: