永发信息网

求助,python3怎么使用pyinstaller.exe进行打包

答案:2  悬赏:20  手机版
解决时间 2021-03-21 10:40
求助,python3怎么使用pyinstaller.exe进行打包
最佳答案
一、下载pyinstaller
我使用的版本为PyInstaller-2.1,支持python版本2.3-2.7,点击这里下载。

二、安装pyinstaller
下载完成后,解压即可。我的解压目录为D:\Python27\PyInstaller-2.1\

三、使用pyinstaller打包.py成.exe应用程序
1.注意使用前要安装pywin32,点击这里下载。

2.将需要打包的.py放到PyInstaller-2.1目录下,如下图所示。

在命令行,cd进入可执行python命令的目录,执行命令:python pyinstaller.py [opts] yourprogram.py
主要选项包括:
-F, –onefile 打包成一个exe文件。
-D, –onedir 创建一个目录,包含exe文件,但会依赖很多文件(默认选项)。
-c, –console, –nowindowed 使用控制台,无界面(默认)
-w, –windowed, –noconsole 使用窗口,无控制台
更详细的使用方法可以参考下载包里的doc目录下的Manual.html文件。

具体操作:
python pyinstaller.py-F sina_crawler.py

实际操作:(其实就是注意文件路径,我的pyinstaller安装目录D:\Python27\pyinstaller-2.1\)
cd到d:\Python27\目录下,然后命令:
python pyinstaller-2.1\pyinstaller.py -F pyinstaller-2.1\sina_crawler.py

如果最后出现Appending archive to EXE,则生成成功。

注意会生成(均在Python27目录下):
1. dist文件夹(包含生成好的sina_crawler.exe)
2.build文件夹(中间生成,没用,事后可以删掉)
3.sina_crawler.spec文件(中间生成,没用,事后可以删掉)

四、生成的微博爬虫软件
双击生成的dist文件夹里的sina-crawler.exe文件,运行软件开始爬取微博。

顺便说句题外话,对于控制台程序运行,无论是.py文件还是生成的.exe文件,程序运行完闪退的情况:可以在程序加上raw_input()函数,表示运行结束等待回车输入再退出。
全部回答
py2exe 能够把 python script 转换成可以在windows上独立执行的(即不需安装python)的exe程序(加上其它必需的运行时函数库)。 使用方式: 假设有一python script 名为"hello.py", 通过一个setup.py script 来产生可执行文件 from distutils.core import setup import py2exe setup(console=["hello.py"]) 将 setup(console=["..."]) 中的文件名替换为要产生 exe 的 script 文件名.然后在 command line 下执行此 script: setup.py py2exe 之后会在当前目录中产生一个 dist 目录。此目录即包含该可执行文件及其它必须的文件,必须一起发布。 上述 setup.py 中指定产生一个 console 程序; 若要产生一个有 console 窗口的程序,将 "console" 改成 "windows": setup(windows=["hello.py"]) 若要生成多个可执行文件,只要将多个 script 文件名以 list 方式传给 setup() 即可: setup(console=["hello.py", "hello1.py", "hello2.py"]) 也可以同时产生 console 和 windows 程序: setup(console=["hello.py", "hello1.py"], windows=["hello2.py"]) 应用程序有时需要使用到一些外部文件,例如字体或是图片等, 通过setup() 的 data_files参数,可以将这些额外的文件加入发布目录中。将一个或多个 (目的目录, [源文件1,源文件2...源文件n]) 形成的 tuple,包装成 list 指派给 data_files参数即可: setup(console=["hello.py", "hello1.py"], windows=["hello2.py"], data_files=[("img", [r"d:\documents\matrix.jpg", r"d:\documents\batman.jpg"]), ("xml", [r"d:\tmp\mypaint.xml", r"d:\tmp\mypuzzle.xml", r"d:\tmp\mypuzzle1.xml"])]) 产生之后的 dist 目录中,应该会有一 img 目录,内含 matrix.jpg 和 batman.jpg 两个文件,以及 xml 目录,内含三个 xml 文件。 另外 py2exe 还提供了生成 windows service 和 com server 的功能。另外 python 的 gui toolkit - tkinter 也可使用,只是会多出 2mb 多的 tkinter runtime....
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
导航犬地图包怎么安装,红警2共和国之辉的地图
上周家里刚装联通的中兴牌光猫,光猫上有4个
卧室有死老鼠的味道怎么办
听说鱼油对降血脂可以,是吗?
下列关于细菌和真菌的叙述中,错误的是(  
高中地理教材《世界地理与中国地理》答案电子
梅馨陇韵东门我想知道这个在什么地方
网上买的火车票取票后改签了 还可以退票吗?
急!港口网站查不到船舶信息,怎么知道船开了
不小心在快手上传了视频,过几分钟就删除了,
足银999是什么意思
单选题下列各句中,没有语病的一项是A.四川成
我想学习粗粮做法面食有没有学校
前家地址有知道的么?有点事想过去
剑灵怎么升星快?我现在5星,不知道怎么升了
推荐资讯
许记商行怎么去啊,有知道地址的么
电脑连数据线能给佳能相机充电吗
电磁场与电磁波中圆柱坐标位置矢量怎么理解
苹果有什么产品是类似mp3一样可以用来听音乐
下面关于声音的叙述,正确的是A.只要物体在振
盗墓笔记黑花句子,跪求袭家大大黑花文里所有
图是亚洲人口分布略图,图中人口分布密集的地
日语武在什么情况下读成む
一首歌,日语歌,某个动漫的歌
百度账号怎么用邮箱注册??是不是不能用邮箱
“做最好的自己”用英语怎么说?
肇庆民生007:我去XX球馆打球,放在其围墙内
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?