转:Python用PyInstaller打包笔记

转自http://www.itoldme.net/archives/1242

为了把python发行到没有安装python的Windows环境使用,需要打包成exe可执行文件。现在常见的python打包工具有cx_Freeze、PyInstaller和py2exe,想想我当初接触python的时候,似乎只有py2exe,而且有不少问题时光荏苒,一切过的真快。本文介绍PyInstaller打包的使用。

一.准备工作

安装PyWin32

http://sourceforge.net/projects/pywin32/下载 PyWin32,本文使用的是 pywin32-219.win-amd64-py2.7,地址:http://sourceforge.net/projects/pywin32/files/pywin32/Build%20219/pywin32-219.win-amd64-py2.7.exe/download

下载PyInstaller

http://www.pyinstaller.org/下载PyInstaller并解压缩。本文使用PyInstaller 2.1。

或者使用pip安装,执行pip install pyinstaller

下载upx(可选)

http://upx.sourceforge.net/下载upx,解压后把upx放在PyInstaller目录下,upx的作用是给生成的exe加壳,减小体积。

二.使用方法

cmd切换到PyInstaller文件夹,执行命令,如:

pyinstaller myscript.py

当然也可以添加输出选项,获得更好的exe可执行文件,如:

python pyinstaller.py --upx-dir -F xxx.py

-F用于制作独立的可执行程序,--upx-dir用于压缩文件。

注意:

  • 网上教程常见的-X选项启用upx已经失效
  • 如果upx.exe已经复制到PyInstaller文件夹下,会默认使用upx,如果不在文件夹下,可以使用--upx-dir选项,如--upx-dir=upx_dir,如--upx-dir=/usr/local/share/
  • 如果upx.exe复制到了PyInstaller文件夹下,如果不想使用upx,需要添加参数 --noupx

三.常用参数介绍

-F 用于制作独立的可执行程序

--upx-dir 使用upx加壳从而压缩exe文件

--noconsole适用于Windows和Mac OS X,用于创建不显示控制台窗口的程序

其他

PyInstaller可以用于多个平台的打包,包括 Windows (32-bit and 64-bit),Linux (32-bit and 64-bit),Mac OS X (32-bit and 64-bit),experimentally Solaris and AIX。

PyInstaller也可以自定义ico文件等,完整使用手册参见http://pythonhosted.org/PyInstaller/

时间: 2024-10-09 07:34:21

转:Python用PyInstaller打包笔记的相关文章

python 使用pyinstaller打包程序

使用pyinstaller 打包.py脚本,在其他计算机可以直接运行,不需要python环境 安装pyinstaller库 pip install pystaller 打包程序 pyinstaller -F *.py 会生成三个文件,程序在dist文件里,其他两个文件夹可以删除 打包程序并使用指点图标 命令 pyinstaller -i <图标文件名.ico> -F *.py 原文地址:https://www.cnblogs.com/sineik/p/9226195.html

Python | 用Pyinstaller打包发布exe应用

参考:https://jingyan.baidu.com/article/a378c960b47034b3282830bb.html https://ask.csdn.net/questions/720080 https://blog.csdn.net/solarnanocar/article/details/82077484 https://www.cnblogs.com/gopythoner/p/6337543.html https://jingyan.baidu.com/article/b

python下py2exe打包笔记

1.下载与python版本一致的py2exe插件包 2.安装py2exe,安装后在python目录下存在:\Lib\site-packages\py2exe\... 3.新建一个python脚本文件,随意命名,如:setupruncase.py 脚本内容如下: from distutils.core import setup import py2exe    setup(console=["AutoRunJmeter.py"]) 其中:AutoRunJmeter.py是编译后的exe文

pyinstaller打包python源程序访问hive

1.需求 使用hvie server一段时间后,业务部门需要自己不定时的查询业务数据,之前这一块都是他们提需求我们来做,后来发现这样重复一样的工作放在我们这边做是在没有效率,遂提出给他们工具或者web UI自助查询,当然hive有自己的hwi可以通过网页UI进行自助查询,但是这对不懂sql的业务人员有点不太友好,目前有没时间去修改hwi的UI,所以还是给他们提供查询工具吧.我这边主要使用python thrift访问集群的hive,所以自然要将python源码打包成.exe,业务人员在windo

使用PyInstaller打包Python程序

使用PyInstaller打包Python程序 PyInstaller介绍: PyInstaller是一个能将Python程序转换成单个可执行文件的程序, 操作系统支持Windows, Linux, Mac OS X, Solaris和AIX.并且很多包都支持开箱即用,不依赖环境. 环境为windows7操作系统,python2.7.8 virtual environment 官网:https://github.com/pyinstaller/pyinstaller 详细步骤: 1. win7下

win10环境下利用pyinstaller把python代码(.py)打包成可执行文件(.exe)

前言 最近写了一个小小的检测程序,python写起来只需要短短一百行,可是打包起来就没有C那么容易了.下面记录一下我艰难的"打包"过程. 方法一:py2exe py2exe是一种经典的方法,为什么说他经典呢?因为这玩意取了个这么好听的名字,但是只支持到python3.4,你这让我们这种紧跟时代潮流的弄潮儿怎么打包? 好吧,放弃. 方法二:pyinstaller 这是一个看起来比较靠谱的方法,只需要用pip安装,然后在命令窗里面一通操作就可以了.在这里,我参考了另一位老哥的博客(http

用PyInstaller打包用PyQt5编写的python程序

0.背景 本弱初学PyQt5,写了一个GUI小程序,但在用PyInstaller打包时出现了不少问题,现将几个比较大的问题记录如下,希望以后能记住. 1. 资源打包 首先是资源打包的问题,我写的程序引用了一张图片,那么在没经过特殊处理的情况下如果想让程序正常运行,就必须把图片放在和程序同一个目录下,但这样总觉得不太舒服.我在网上看到有三种解决方法:一是通过修改PyInstall配置文件*.spec来实现打包,但是在我的环境下不成功:二是自己写程序对图片进行Base64编码存在字符串里并存储在另一

PyInstaller打包Python源文件为可执行程序exe

1. 安装PyInstaller 使用命令:pip install PyInstaller时可能会由于网络的问题出现以下问题: pip._vendor.urllib3.exceptions.ReadTimeoutError:HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Read timed out. 此时修改命令为:pip install --default-timeout=1000 PyInstaller 问题未解决

利用pyinstaller打包Python项目包含多个文件夹

最近用Python给媳妇写了两个小项目,给解决了她的每天重复的一些人工操作.媳妇很开心,但是问题来了,她是个Python小白,对她来说,需要安装配置Python环境和一大堆第三方模块是个麻烦事儿.而且后续把这些工作交接给别人的话,一是又需要重新安装Python环境,二是我辛苦给她写的源码就这样暴露了. 为了解决这个问题,于是就开始百度.果然Python还是有好多中加密源码的方法,并且可能打包成exe的可执行文件.这样不仅保护了源码的安全,还免去了安装Python环境的繁琐. 最开始试了是py2e