用 pyinstaller、-F -w等打包方式生成 exe 后,都出现错误,是怎么回事?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用 pyinstaller、-F -w等打包方式生成 exe 后,都出现错误,是怎么回事?相关的知识,希望对你有一定的参考价值。
参考技术A首先安装pyinstaller下载地址:7827835传统方式:通过命令提示符cd到该解压的(和setup.py同一目录),然后输入pythonsetup.pyinstall或者直接在命令提示符中输入pipinstallpyinstaller通过piplist可以查看你所有安装的包以及包的版本
开始打包成exe1、命令提示符cd到需要打包的文件的目录,直接在命令提示符中输入pyinstaller-F文件名.py注意F要大些,呵呵就这么简单
打包成功后会出现两个文件夹,其中一个就是所需要的exe文件;
注:若是gui文件可以在输入pyinstaller-F-w文件名.py其中w是小写,意思就是五命令行窗口,默认的是-c有命令行窗口,当然一般的文件也可以-w,这样命令行窗口就没有了。pyinstaller的其他常用的参数--icon=图标路径-F打包成一个exe文件-w使用窗口,无控制台-c使用控制台,无窗口-D创建一个目录,里面包含exe以及其他一些依赖性文件还有一些可以通过pyinstaller-h来查看参数。
用 pyinstaller、-F -w等打包方式生成 exe 后,都出现错误可能的原因以及解决措施如下:
1.如果你用的第三方模块是用vc2008 sp1 express编译的话。可能会碰到一个BUG。据说是因为vc2008 sp1在manifest文件写的是原版crt的版本号,但是实际上用的是新版本的crt。
2.你可以让用户安装msvcrt看看。只带动态链接库的话,解决办法比较麻烦,要改manifest的版本号。
参考技术C1、如果你用的第三方模块是用vc2008 sp1express编译的话。可能会碰到一个BUG。
2、据说是因为vc2008 sp1在manifest文件写的是原版crt的版本号,但是实际上用的是新版本的crt。
3、你可以让用户安装msvcrt看看。只带动态链接库的话,解决办法比较麻烦,要改manifest的版本号。
封装 pyinstaller -F -i b.ico excel.py
-
安装pywin32,可以参考《怎么给python安装pywin32模块?》
一定要注意对应的python版本,否则不能安装。
-
用命令行调用pip安装pyinstaller。
-
准备一个py文件。
我这里准备的是一个爬取电子书的python文件——00.py。
-
准备一个图片,作为exe的图标:
b.ico
注意图片格式是ico的,大小为32*32,不要太大。没有的话,可以在网上免费转格式。
把00.py和b.ico放到一个目录里面——C:\a
-
把cmd的当前目录切换到C:\a。
-
然后执行命令行:
pyinstaller -F -i b.ico 00.py
-
运行之后,cmd变成了这样。
-
在C:\a目录里面,多出了几个文件夹。
可执行文件00.exe就在dist文件夹里面。
-
双击可执行文件,会弹出一个命令提示符端口,提示你输入书号。
按照格式输入书号,点击回车键,就可以在dist文件夹里面,看到一章章的电子书被下载下来了。
END
以上是关于用 pyinstaller、-F -w等打包方式生成 exe 后,都出现错误,是怎么回事?的主要内容,如果未能解决你的问题,请参考以下文章
有人用 Pyinstaller 成功地将数据文件捆绑到一个文件中吗?