首先需要将cmd或者PowerShell目录cd 跳转到py脚本所在目录,然后直接执行 Pyinstaller -F即可完成程序的打包,其中我们关心它有哪些常见参数:

输入参数的含义

  • -F 表示生成单个可执行文件

  • -w 表示去掉控制台窗口,这在GUI界面时非常有用。不过如果是命令行程序的话那就把这个选项删除吧!

  • -p 表示你自己自定义需要加载的类路径,一般情况下用不到

  • -i 表示可执行文件的图标

  • 不过顺序上有要求,如果想要修改默认图标,正确的写法是:Pyinstaller -F -w -i "ico文件完整路径" "py文件完整路径”,否则经常编译出错。
  • 如果编译报"UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb6 in position 5650: invalid start byte",可尝试在powershell下输入:chcp 65001。
  • 常见报错如下:
  • 171 INFO: checking Analysis
    171 INFO: Building Analysis because out00-Analysis.toc is non existent
    171 INFO: Initializing module dependency graph...
    187 INFO: Initializing module graph hooks...
    187 INFO: Analyzing base_library.zip ...
    5538 INFO: running Analysis out00-Analysis.toc
    5553 INFO: Adding Microsoft.Windows.Common-Controls to dependent assemblies of final executable
      required by d:\program files\python35\python.exe
    6380 INFO: Caching module hooks...
    6380 INFO: Analyzing D:\photo.ico
    Traceback (most recent call last):
      File "D:\Program Files\python35\Scripts\pyinstaller-script.py", line 11, in <module>
        load_entry_point('PyInstaller==3.3.1', 'console_scripts', 'pyinstaller')()
      File "d:\program files\python35\lib\site-packages\PyInstaller\__main__.py", line 94, in run
        run_build(pyi_config, spec_file, **vars(args))
      File "d:\program files\python35\lib\site-packages\PyInstaller\__main__.py", line 46, in run_bu
        PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
      File "d:\program files\python35\lib\site-packages\PyInstaller\building\build_main.py", line 79
        build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
      File "d:\program files\python35\lib\site-packages\PyInstaller\building\build_main.py", line 73
        exec(text, spec_namespace)
      File "<string>", line 16, in <module>
      File "d:\program files\python35\lib\site-packages\PyInstaller\building\build_main.py", line 21
        self.__postinit__()
      File "d:\program files\python35\lib\site-packages\PyInstaller\building\datastruct.py", line 16
        self.assemble()
      File "d:\program files\python35\lib\site-packages\PyInstaller\building\build_main.py", line 41
        priority_scripts.append(self.graph.run_script(script))
      File "d:\program files\python35\lib\site-packages\PyInstaller\depend\analysis.py", line 201, i
        self._top_script_node = super(PyiModuleGraph, self).run_script(pathname)
      File "d:\program files\python35\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py",
    t
        contents = fp.read() + '\n'
      File "d:\program files\python35\lib\codecs.py", line 321, in decode
        (result, consumed) = self._buffer_decode(data, self.errors, final)
    UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb6 in position 5650: invalid start byte

使用Pyinstaller打包python py文件注意事项的更多相关文章

  1. “failed to excute script xxx” PyInstaller 打包python程序为exe文件过程错误

    在使用PyInstaller打包python程序,打包命令为: pyinstaller -F -w -i manage.ico yourpyfile.py 顺便说一下几个参数的作用 -F:是直接生成单 ...

  2. pyinstaller打包python文件成exe(原理.安装.问题)

    py文件打包成exe文件的方式一共有三种:py2exe.PyInstaller和cx_Freeze 本文分四个步骤来详讲如何用PyInstaller将py文件打包成exe文件 1. PyInstall ...

  3. 使用pyinstaller打包Python应用,生成EXE执行文件

    在命令行中切换到要打包的程序所在目录,或者在程序目录打开命令行,直接输入下面的指令即可pyinstaller -F xxx.py pyinstaller -F -w -i manage.ico app ...

  4. PyInstaller 打包 python程序成exe

    pychaim下PyInstaller 打包 python程序 主题是使用PyInstaller 打包python时遇到一些问题以及解决方案,其中将要打包的程序是用tensorflow做的LSTM算法 ...

  5. PyInstaller打包python脚本的一些心得

    PyInstaller打包python脚本的一些心得 因为在公司经常要帮同事做一个从excel表格中提取出需要的内容的重复工作,比较繁琐还容易出错:于是就想着要写个程序,但是同事又不可能在电脑上也装上 ...

  6. 安装PyInstaller打包python

    安装PyInstaller 对于那些网络比较稳定,能够流畅使用pip源地址的用户,直接下面的命令就可以搞定: pip install pyinstaller 通常我们会下载源码包,然后进入包目录,执行 ...

  7. 运行 python *.py 文件出错,如:python a.py

    运行 python *.py 文件出错,如:python a.py(下图) 原因:没有安装web.py 解决:下载并安装 网址:http://webpy.org/install#install  (h ...

  8. python用pyinstaller打包成exe文件

    版本为Python2.7 一.安装Pyinstaller 1.安装pywin32 下载安装文件:查找到跟自己适用的python版本及window系统版本匹配的pywin32,下载后安装  使用pip命 ...

  9. win7 32位用pyinstaller打包Python和相关html文件 成exe

    http://tieba.baidu.com/p/3060401749?traceid= 安装 pyinstaller 然后 第一步你的脚本里面要做相应处理,添加一个函数:def resource_p ...

随机推荐

  1. Linux学习之---Xshell

    经过两周的断断续续的学习,终于把慕课网上tony老师的<Linux网络管理>基础知识学完.tony老师讲课风趣幽默,深入浅出,为老师打call!! 课程地址:https://www.imo ...

  2. day_6.8 py 网络编程

    2018-6-8 18:20:30 OSI模型:就是七层物理层 ICMP 我ping你的时候要用,不仅要知道ip地址和网卡号mac地址 ARP  在我和你通讯前不知道的mac地址需要广播一下,当我说的 ...

  3. [No000016E]Spring 中获取 request 的几种方法,及其线程安全性分析

    前言 本文将介绍在Spring MVC开发的web系统中,获取request对象的几种方法,并讨论其线程安全性. 原创不易,如果觉得文章对你有帮助,欢迎点赞.评论.文章有疏漏之处,欢迎批评指正. 欢迎 ...

  4. Spring <context:annotation-config> 与<context-component-scan> 的作用

    <context:annotation-config> 与<context-component-scan> 的作用 <context:annotation-config& ...

  5. shell脚本之使用sed和awk进行文本处理

    Shell这种脚本语言特点是,结果松散,场景复杂,针对于一些参数都有特殊意义.针对于大部分工程师而言,使用中的情况是你可能会经常忘记参数或其意义,使你不得不查阅man或网上寻求帮助.此篇文档作用就是在 ...

  6. wap手机端实现上传图片流程

    实现图片上传使用了WeUI uploader插件 WeUI:是一套同微信原生视觉体验一致的基础样式库,为微信Web开发量身设计 流程:图片上传用到了FileReader,FormData,用这两个基本 ...

  7. jctable

    1.jctable 选择单项并删除: var items = Co["MyTable"].GetSelected("HtmlEle"); if (items.l ...

  8. ms sql server,oracle数据库实现拼接一列的多行内容

    项目中要将查询出的一列的多行内容拼接成一行,如下图:ypmc列. ms sql server: 网上查到相关资料如下:http://blog.csdn.net/rolamao/article/deta ...

  9. 抽屉之Tornado实战(6)--session工厂(工厂方法模式)

    我之前写的session一般保存在服务器的内存里,那可以保存在缓存,或是数据库,那问题来了,不同地方,保存方式是不同的,所以需要定义不同的类,cache/redis/memcached类 sessio ...

  10. HTML5上传文件显示进度

    下面我们使用Html 5的新特性file api实现上传文件,并显示上传文件进度百分比.意图是这样的,当选择文件时,显示当前文件信息.这里我们是结合Asp.net MVC做为服务端,您也可以是其它的服 ...