多个Python文件打包成一个可执行文件(.exe)文件

安装Pyinstaller

首先我们要先安装Pyinstaller,直接在cmd使用pip命令

 pip install pyinstaller 

如果网速太慢可以切换国内源来加速 

pip install -i https://pypi.douban.com/simple/ pyinstaller #豆瓣源
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyinstaller #清华源 

 注:用魔法工具的时候,不要用国内源,会显示该包找不到

 Pyinstaller打包步骤

pyinstaller [主文件] -p [其他文件1] -p [其他文件2]  --hidden-import [库包名1]
Pyinstaller -F test1.py 打包exe
 
Pyinstaller -F -w test1.py 不带控制台的打包
 
Pyinstaller -F -w -i WANG.ico test1.py 打包指定exe图标打包

 

注:主文件就是main.py

        其他文件就是别的.py文件 

        库包名就是你程序需要的包(可以看报错,缺什么导什么)

打开项目所在的文件夹,这时发现生成了一个dist文件夹和一个.spec文件

在打开文件夹(注:如果使用-F则在该文件夹下只有一个.exe) 

 

 双击直接跑

 日常报错

ModuleNotFoundError: No module named ‘xxx‘  意思没有‘XXX’这个包

chaojiying是网上的一个识别验证码的包,他是pip install 下载不了的,就例如自己写的包

解决方法如下

  1. 没有__init__.py文件
  2. 没设置PYTHONPATH(自建的包所在路径不在PYTHONPATH下)

 没有__init__.py文件

自己写的包下很容易出这个问题,检测包的根目录是否存在一个__init__.py文件,没有的话建一个空的__init__.py文件即可 (注意:不光要检查待导入的包根目录是否存在__init__.py文件,还需要检查当前程序所在文件夹是否存在这个文件) 

不过对于缺少__init__.py文件这种情况,还有一种报错形式是: ImportError: attempted relative import with no known parent package

没设置PYTHONPATH

1. 在报错的包下面加入

import sys
sys.path.append("XXX")

XXX是你自建包的路径

import sys
sys.path.append("D:\PyCharm 2022.1\爬虫\chaojiying_Python")

注:路径是到那个包的文件夹,不是.py文件

sys没有的直接 pip install sys 

2.另外一种方法是:

把路径添加到系统的环境变量,或把该路径的文件夹放进已经添加到系统环境变量的路径内。环境变量的内容会自动添加到模块搜索路径中

添加环境变量网上有一堆 

  • 4
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

菜的跟个大师一样

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值