• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    pyinstaller打包可执行文件,存放路径包含中文无法运行的解决方案

    一、实验环境

    1.Windows7x64_SP1

    2.anaconda2.5.0 + python2.7(anaconda集成,不需单独安装)

    3.pyinstaller3.0

    二、问题描述

    1.使用如上环境,pyinstaller打包生成的exe文件,存放在本地,如果路径中包含中文,程序无法运行;exe程序如果使用中文命名,程序同样无法运行。

    三、解决方式

    1.查看pyinstaller网站

    https://pypi.org/project/PyInstaller/

    2.有如下描述

    3.更换实验环境

    1.Windows7x64_SP1

    2.anaconda3.7 + python3.7(anaconda集成,不需单独安装)

    3.pyinstaller3.5        #使用pyinstaller3.0,打包时报错

    4.打包exe程序,存放路径包含中文,exe程序可以正常运行

    补充:pyinstaller的使用和几个坑

    pyinstaller是一个非常简单的打包python的py文件的库。用起来就几条命令就够了

    直接pip install pyinstaller 会下载到最新版的 3.3的pyinstaller,和之前版本的语法是不同的,这个版本直接cmd里输入

    pyinstaller X:\XXX\XXX.py 就可以了 生成的文件就在c盘user\用户名\dist 下,而用户名文件下还有个buld里面存放了她运行的中间文件,里面有个warn文件详细记录了打包的错误,虽然没什么卵用,但至少可以拿来百度下骗骗自己。。。哈哈

    另外说几个非常重要的问题

    1.命令使用pyinstaller和pyinstaller.exe结果都是一样的

    2.-w是不显示命令窗口, -i 图标文件的路径 这是改变图标的,但是我发现只能改变任务栏里的和命令窗口的图标,并不能改变exe文件的图标。另外这些参数要加载pyinstaller和路径中间。

    3.有一些代码需要调用一些图片和资源文件的,这是不会自动导入的,需要你自己手动复制进去才行。不然exe文件运行时命令窗口会报错找不到这个文件。

    4.也是最坑的一点。就是当你使用错误的参数去打包或者打包到一半中断,等等此类运行到一半没了的情况。会导致你原来的py文件变成一个0KB的空文件。里面的代码会全部消失!!!所以以后需要有个良好的习惯,就是复制一份代码出来,用这个副本进行打包。并且参数出错,或者打错了导致失败时,检查下副本文件的py文件是否还存在再继续重新打包,不然打出来的就是空的文件,自然一直闪退,因为压根没内容。

    5.写代码的时候应当有个良好的习惯,用什么函数导什么函数,不要上来import整个库,最后你会发现你一个100KB的代码打包出来有500MB,全是库,简直无语

    6.pygame代码调试的时候要用quit()不然程序结束时会崩溃。但是直接运行py文件就不需要这个函数。这个我们之前的文章也提到过了。但是这里当我使用-w做成无窗口的程序后,一结束发现报错,暂停后发现报的是找不到quit()函数。可见这个函数其实是一个很让人无语的函数。一方面pygame官方网上说结束程序的时候需要加入这个函数。另一方面其实在正在运行时都不需要甚至会报错。虽然也不影响运行,但是弹个窗口出来说 什么不fail to execute总是让别人觉得你是个lowb。所以,调试的时候加一下,到时候execute的时候去掉。

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

    您可能感兴趣的文章:
    • Pyinstaller打包文件太大的解决方案
    • pyinstaller封装exe的操作
    • 基于pyinstaller超级加密操作(加壳和转c)
    • 基于PyInstaller各参数的含义说明
    • 解决Pyinstaller打包软件失败的一个坑
    • Python实现图片指定位置加图片水印(附Pyinstaller打包exe)
    上一篇:pyqt添加启动等待界面的操作
    下一篇:python脚本打包后无法运行exe文件的解决方案
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    pyinstaller打包可执行文件,存放路径包含中文无法运行的解决方案 pyinstaller,打包,可执行,文件,