作者skateshare ()
看板Python
标题[问题] pyinstaller hidderimports bs4
时间Tue May 26 16:02:02 2020
大家好
小弟写了一简单应用程式 想用pyinstaller 打包成 exe
打包完成後执行exe 档出现 "No module named 'bs4'" 的错误讯息
上网查了一下 於是重新打包
pyinstaller --hidden-import=bs4.BeautifulSoup MIPI_error_checker.py
(在重新打包前 有先清掉旧的 build/dist 资料夹 也有删除 MIPI_error_checker.SPE
C)
但重新打开exe 依然出现"No module named 'bs4'" 的错误讯息
请问我哪个环节出错了?
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.136.129.120 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1590480131.A.C3E.html
1F:推 pmove: 你py档执行没错吗?05/26 17:20
2F:→ pmove: 你会不会装有两个板本python?结果PyInstaller 装在另一个05/26 17:26
3F:→ skateshare: 在pycharm 上执行没有问题 结果也正确05/26 17:53
4F:→ skateshare: 但是我有把 bs4 拿掉 然後同样执行pyinstaller没问题05/26 17:53
5F:→ skateshare: 这样能否说明 PyInstaller 没有装错?05/26 17:54
6F:推 pmove: bs4不拿掉,执行PyInstaller?05/26 18:00
哦 抱歉表达不清
就是不要import bs4 使用pyinstaller 是没问题的
但一旦有import bs4 就如同原文所说的
※ 编辑: skateshare (114.136.129.120 台湾), 05/26/2020 20:10:30
7F:→ TakiDog: 你直接pyinstaller -f 不能包吗 spec先不写05/26 20:09
我第一次就是先用 pyinstaller -F main.py fail 之後才去找 --hidden-import=bs4 的
※ 编辑: skateshare (114.136.129.120 台湾), 05/26/2020 20:14:54
推 mychiux413: 我用py3.4包过bs4, 没出问题
05/26 21:22
这边可以问一下 我退回3.4之後 pyinstaller 反而吐出
pyinstaller requires at least python 2.7 or 3.5+??
8F:→ pmove: 你不用--hidden-import参数,会有啥问题吗?还有用python3. 05/27 10:07
9F:→ pmove: 8.x的话,可以安装PyInstaller, 但在包成exe时,可能有问题 05/27 10:07
10F:推 pmove: 您先用py -3 your.py执行,确定可以执行。再用 py -3 -m Py 05/27 11:23
11F:→ pmove: Installer <参数> your.py 这样就可以确定python版本正确 05/27 11:23
12F:→ pmove: --hidden-import=bs4改成这样看看? 05/27 11:38
第一开始的确不用 --hidden-import 会抓不到 bs4
另外我试过您的 py -3 main.py 出现ModuleNotFoundError: No module named 'bs4'
这样是我的py版本有问题吗?
※ 编辑: skateshare (114.136.129.120 台湾), 05/27/2020 14:45:50
※ 编辑: skateshare (114.136.129.120 台湾), 05/27/2020 14:49:25
13F:推 pmove: 你不能执行py -3 main.py代表该python环境没安装bs4模组 05/27 14:52
14F:→ skateshare: 我是原po 但我在pycharm 环境是没问题 所以你说的 05/27 14:54
15F:→ skateshare: 的python 环境不等於 pycharm 环境? 05/27 14:55
16F:→ skateshare: pmove 大 谢谢你 05/27 15:02
17F:→ skateshare: 我刚刚google一下 先pip install bs4 05/27 15:02
18F:→ skateshare: 然後正常执行 pyinstaller -F main.py 没问题了 05/27 15:02
19F:→ skateshare: 感谢所有板友脑力激荡 十分谢谢 05/27 15:03
20F:→ s860134: pychram 预设会在 project 资料夹产生一个 venv 05/30 17:52
21F:→ s860134: 所以确实就是 pycharm 的 python 不是你的 pyinstaller 05/30 17:53
22F:→ s860134: 所跑的 python 05/30 17:53
23F:→ s860134: 板上大概有 1/10 的提问都是这个问题XD 05/30 17:54
24F:→ s860134: google "virtualenv" ,使用 conda 或 pychrame 都是类似 05/30 17:57
25F:→ s860134: 常见问题 05/30 17:57
26F:→ alvinlin: 所以新手还是用IDLE就好。书上没事介绍那些比较复杂的又 06/02 01:51
27F:→ alvinlin: 没说清楚 06/02 01:51