2.安装方法
安装pywin32:下载安装PyInstaller运行前需要安装windows拓展---pywin32pywin32下载地址:
安装PyInstaller:
验证安装成功与否:
python2 & python3
验证安装成功与否:
3.使用方法
源码视频书籍练习题等资料进群984632579 即可免费获取
更多python记得关注我的公众号 从0到1Python之路
1087 INFO: PyInstaller: 3.2
1087 INFO: Python: 2.7.12
1088 INFO: Platform: Windows-7-6.1.7600-SP0
1090 INFO: wrote C:UsersthinkpadDesktopmonitormonitor.spec
1172 INFO: UPX is available.
1174 INFO: Extending PYTHONPATH with paths
['C:\Users\thinkpad\Desktop\monitor',
'C:\Users\thinkpad\Desktop\monitor']
pyinstaller -F .py全路径 –distpath exe存放目录
五. 参加麻瓜编程心得:
我最大的感想是魔力教程的优美,它清晰、简洁、易懂。
视频学习过程中深刻体会到了编制者的用心,精美的配图加上适宜的背景音乐,基础知识和贴切的小项目,这一系列的配套成就了麻瓜的不凡。
成功的学会十万数据的爬取之后,那种成就感简直了哎呀,无法言喻。之后是数据的可视化还有各种图形以及显示在网页上,这一连串的成就都让我很开心,而且这个技能让我在职业技术上有了很大的提升,以后跳槽我又有了资本,十分感谢麻瓜!
六. 参考网址:
http://pythonhosted.org/PyInstaller/
http://blog.csdn.net/zc02051126/article/details/8827868
想上手实战的小白看过来,这里有网易云课堂上最畅销的 Python 课程:Python 实战:四周学会爬虫系统
上大学的时候有老师不给上课的PPT,就总想有个程序能偷偷复制老师的U盘。一直没有去实现,最近不想看论文,就想起来这个事情了,发现其实用几行python代码就能搞定了。分两步,首先写出来python代码,其次把.py文件转换成exe文件,直接在windows电脑上后台运行。
增加版本信息文件方法如下:
以上这篇Pyinstaller将py打包成exe的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
一.pyinstaller简介
pyinstaller将Python脚本打包成可执行程序,使在没有Python环境的机器上运行
最新版是pyinstaller 3.1.1。支持python2.7和python3.3 。
可运行在Windows,Mac和Linux操作系统下。
但它不是跨编译的,也就是说在Windows下用PyInstaller生成的exe只能运行在Windows下,在Linux下生成的只能运行在Linux下。
代码示例:上面就是所有的代码,代码有两个地方要改成你自己的路径,我在代码里注释了
pip install pyinstaller
不怕麻烦的也可以通过下载源码python setup.py install 进行安装 。
验证是否成功:pyinstaller -v
三.打包
打包的app里并不包含任何源码,但将脚本的.pyc文件打包了。
基本语法:
pyinstaller options myscript.py
常用的可选参数如下:
--onefile 将结果打包成一个可执行文件
澳门新濠3559,--onedir
将所有结果打包到一个文件夹中,该文件夹包括一个可执行文件和可执行文件执行时需要的依赖文件(默认)
--paths=DIR 设置导入路径
--distpath=DIR 设置将打包的结果文件放置的路径
--specpath=DIR 设置将spec文件放置的路径
--windowed 使用windows子系统执行,不会打开命令行(只对windows有效)
--nowindowed 使用控制台子系统执行(默认)(只对windows有效)
--icon=<FILE.ICO>
将file.ico添加为可执行文件的资源(只对windows有效)
如pyinstaller --paths="D:Queena" guess_exe.py
第一种:直接用命令pip install pyinstaller。然后就是等待安装了,如果你安装了pip,使用这个命令安装是最方便的了。未安装pip请参考
pyinstaller安装比较简单,支持pip 安装,直接使用如下命令即可完成安装:
您可能感兴趣的文章:
- 利用PyInstaller将python程序.py转为.exe的方法详解
- 利用pyinstaller将py文件打包为exe的方法
pyinstaller将Python脚本打包成可执行程序,使用Pyinstaller将py可以打包成exe澳门新濠3559。二.pyinstaller在windows下的安装
使用命令pip install pyinstaller即可
在windows下,pyinstaller需要PyWin32的支持。当用pip安装pyinstaller时未找到PyWin32,会自动安装pypiwin32
出现Successfully installed pyinstaller-3.1.1 pypiwin32-219即表示安装成功
1.适用版本
python2 & python3
pyinstaller specfile
或者
2、安装pyinstaller
四.小实例(windows下)
写好游戏文件guess_exe.py,代码如下:
__author__ = 'qa-2'
# -*- coding:utf-8 -*-
# 摇3次骰子,当总数total,3<=total<=10时为小,11<=total<=18为大
import random
import time
def enter_stake(current_money):
'''输入小于结余的赌资及翻倍率,未考虑输入type错误的情况'''
stake = int(input('How much you wanna bet?(such as 1000):'))
rate = int(input("What multiplier do you want?你想翻几倍?(such as 2):"))
small_compare = current_money < stake * rate
while small_compare == True:
stake = int(input('You has not so much money ${}!How much you wanna bet?(such as 1000):'.format(stake * rate)))
rate = int(input("What multiplier do you want?你想翻几倍?(such as 2):"))
small_compare = current_money < stake * rate
return stake,rate
def roll_dice(times = 3):
'''摇骰子'''
print('<<<<<<<<<< Roll The Dice! >>>>>>>>>>')
points_list = []
while times > 0:
number = random.randrange(1,7)
points_list.append(number)
times -= 1
return points_list
def roll_result(total):
'''判断是大是小'''
is_big = 11 <= total <= 18
is_small = 3 <= total <= 10
if is_small:
return 'Small'
elif is_big:
return 'Big'
def settlement(boo,points_list,current_money,stake = 1000,rate = 1):
'''结余'''
increase = stake * rate
if boo:
current_money = increase
print('The points are ' str(points_list) ' .You win!')
print('You gained $' str(increase) '.You have $' str(current_money) ' now.' )
else:
current_money -= increase
print('The points are ' str(points_list) ' .You lose!')
print('You lost $' str(increase) '.You have $' str(current_money) ' now.' )
return current_money
def sleep_second(seconds=1):
'''休眠'''
time.sleep(seconds)
# 开始游戏
def start_game():
'''开始猜大小的游戏'''
current_money = 1000
print('You have ${} now.'.format(current_money))
sleep_second()
while current_money > 0:
print('<<<<<<<<<<<<<<<<<<<< Game Starts! >>>>>>>>>>>>>>>>>>>>')
your_choice = input('Big or Small: ')
choices = ['Big','Small']
if your_choice in choices:
stake,rate = enter_stake(current_money)
points_list = roll_dice()
total = sum(points_list)
actual_result = roll_result(total)
boo = your_choice == actual_result
current_money = settlement(boo,points_list,current_money,stake,rate)
else:
print('Invalid input!')
else:
sleep_second()
print('Game Over!')
sleep_second(2)
if __name__ == '__main__':
start_game()
之后命令行,切换到guess_exe.py的目录下,
输入:
pyinstaller --onefile --nowindowed --icon=" D:QueenaPyCharmProjectsdist1computer_three.ico" guess_exe.py
就会在当前文件下形成build文件夹、dist文件夹和.spec文件。
dist里就是guess_exe.exe可执行文件。
如果有打包错误,具体看build里的warn***.txt文档,里面详细记载了错误的原因。一般都是库丢失。
spec文件告诉PyInstaller如何去处理脚本。它对脚本名以及大多数pyinstaller的可选参数进行加密。PyInstaller就是通过执行spec文件的内容来build
the app。
1.PyInstaller
注: spec文件每次通过命令生成时都会存在,可以通过简单的修改增加相应的功能,如加图标,指定版权文件 。
第二种就是下载pyinstaller包
1.官网下载pyinstall 工具, 并解压2.通过cmd跳到pyinstaller目录 并执行 setup.py install 进行安装。接下来就是等待了,可能会安装大量的库
安装截图此时pyinstaller这个工具已经安装到和pip相同的目录下
工具安装完成
下面就是进行打包了:
进入你的源程序所在的目录,然后pyinstaller
xxx.py打包截图然后在此目录下就会生成一个dist的文件夹,里面存放的就已经生成的.exe文件
开文件夹,里面会有好多文件,找到.exe文件,双击就可以运行你的程序了
(注意:如果安装了电脑管家或者360的会弹出是否允许执行,一定要允许,否则就执行不了)
C:UsersthinkpadDesktopmonitor>C:Python27Scriptspyinstaller.exe -i alert.ico -F monitor.py
4、实例
两种工具将.py文件打包成exe:
二、使用
执行结果:
2.cx_Freeze
pyi-build specfile
背景:分享python编写的小脚本时,拷贝代码还缺各种环境,使用Pyinstaller将py可以打包成exe,直接运行即可
这里以之前写的程序为例,可以通过如下命令生成一个可执行文件
需要注意的是,pyinstaller在windows平台下依赖pywin32模块。在使用pyinstaller前,需要安装好pywin32模块(exe 的包,安装非常简单)。
可以通过grab_version.py先读取一个已经存在的exe文件,获取其版本信息,如下:
四、版本信息文件的生成
1、安装pyinstaller运行时所需要的windows拓展pywin32
默认安装完成后,pyinstaller程序位于C:Python27Scripts目录下,可以通过执行pyinstaller python_script.py 生成可执行文件 ,生成的可执行文件位于执行所在目录下的dist目录下。其高级参数如下:
3、pyinstaller指令
C:UsersthinkpadDesktopmonitor>C:Python27Libsite-packagesPyInstallerutilscliutilsgrab_version.py
C:WindowsSystem32sc.exe
Version info written to: file_version_info.txt
将file_version_info.txt放到对应的目录,并将内部的信息修改后,可以按步骤2中的方法,生成带有版权信息的可执行文件。
参数 | 含 义 |
---|---|
-F | 只生成一个exe文件 |
–distpath | 指定生成的exe存放的目录 |
–workpath | 指定编译中临时文件存放的目录 |
-D | 创建一个目录包含:exe文件、依赖文件 |
-i | 指定exe图标 |
-p | 指定exe依赖的包、模块 |
-d | 编译为debug模式,获取运行中的日志信息 |
-clean | 清理编译时临时文件 |
-c | 使用控制台 |
-w | 使用窗口 |
-version-file | 添加exe版本信息 |
可以看到上面的upx是可用的。通过spec文件也一样,增加upx=True即可。
pip install pyinstaller
三、upx压缩
此时的spec文件内容如下:
C:UsersthinkpadDesktopmonitor>C:Python27Scriptspyinstaller.exe
-i alert.ico --version-file=file_version_info.txt -F monitor.py
版本信息的写法看后面 。
–distpath=path_to_executable
指定生成的可执行文件存放的目录,默认存放在dist目录下
–workpath=path_to_work_files
指定编译中临时文件存放的目录,默认存放在build目录下
–clean 清理编译时的临时文件
-F, –onefile 生成单独的exe文件而不是文件夹
-d, –debug 编译为debug模式,有助于运行中获取日志信息
–version-file=version_text_file
为exe文件添加版本信息,版本信息可以通过运行pyi-grab_version加上要获取版本信息的exe文件的路径来生成,生成后的版本信息文件可以按需求修改并作为--version-file的参数添加到要生成的exe文件中去
-i <FILE.ico>, -i <FILE.exe,ID>, –icon=<FILE.ico>,
–icon=<FILE.exe,ID>
为exe文件添加图标,可以指定图标路径或者从已存在的exe文件中抽取特定的ID的图标作为要生成的exe文件的图标
另外,还可以通过spec文件来生成可执行文件 。具体命令如下:
# -*- mode: python -*-
block_cipher = None
a = Analysis(['monitor.py'],
pathex=['C:\Users\thinkpad\Desktop\monitor'],
binaries=None,
datas=None,
hiddenimports=[],
hookspath=[],
runtime_hooks=[],
excludes=[],
win_no_prefer_redirects=False,
win_private_assemblies=False,
cipher=block_cipher)
pyz = PYZ(a.pure, a.zipped_data,
cipher=block_cipher)
exe = EXE(pyz,
a.scripts,
a.binaries,
a.zipfiles,
a.datas,
name='monitor',
debug=False,
strip=False,
upx=True,
console=True , version-file=file_version_info.txt ,
icon='alert.ico')
本篇算是 python编写windows tomcat守护进程 篇的延续 。之前写的代码没事想要打包成exe文件,可以将python打包成exe的工具主要有py2exe、pyinstaller、cx_freeze 。其中py2exe感觉是最难用,打包最烂的;cx_freeze打包比较简单,但是功能没有另外两个强大,所以个人感觉pyinstaller是最好用的。pyinstaller支持打包压缩、打包成单个文件、增加个性图标、设置版权信息。效果如下:
默认生成的python可执行文件有点大,可以通过upx程序进行压缩,upx程序的主页位于:https://upx.github.io/ ,目前windows版的最新upx为upx391w.zip ,下载后,将其中的upx.exe文件放到C:Python27目录下(python可执行程序的安装目录),再次执行的时候,可以跟上--upx进行压缩。默认存在时不指定也会进行压缩,生成exe文件时,在其日志中可以发现如下内容:
C:Usersthinkpad>cd /d C:UsersthinkpadDesktopmonitor
C:UsersthinkpadDesktopmonitor>C:Python27Scriptspyinstaller.exe
-F monitor.py
在monitor增加一个ico图标文件,操作方法如下:
一、安装
编辑:编程 本文来源:pyinstaller将Python脚本打包成可执行程序,使用Py
关键词: 澳门新濠3559