[問題] pyinstaller hidderimports bs4

看板Python作者時間4年前 (2020/05/26 16:02), 3年前編輯推噓4(4023)
留言27則, 5人參與, 3年前最新討論串1/1
大家好 小弟寫了一簡單應用程式 想用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://www.ptt.cc/bbs/Python/M.1590480131.A.C3E.html

05/26 17:20, 4年前 , 1F
你py檔執行沒錯嗎?
05/26 17:20, 1F

05/26 17:26, 4年前 , 2F
你會不會裝有兩個板本python?結果PyInstaller 裝在另一個
05/26 17:26, 2F

05/26 17:53, 4年前 , 3F
在pycharm 上執行沒有問題 結果也正確
05/26 17:53, 3F

05/26 17:53, 4年前 , 4F
但是我有把 bs4 拿掉 然後同樣執行pyinstaller沒問題
05/26 17:53, 4F

05/26 17:54, 4年前 , 5F
這樣能否說明 PyInstaller 沒有裝錯?
05/26 17:54, 5F

05/26 18:00, 4年前 , 6F
bs4不拿掉,執行PyInstaller?
05/26 18:00, 6F
哦 抱歉表達不清 就是不要import bs4 使用pyinstaller 是沒問題的 但一旦有import bs4 就如同原文所說的 ※ 編輯: skateshare (114.136.129.120 臺灣), 05/26/2020 20:10:30

05/26 20:09, 3年前 , 7F
你直接pyinstaller -f 不能包嗎 spec先不寫
05/26 20:09, 7F
我第一次就是先用 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+??

05/27 10:07, 3年前 , 8F
你不用--hidden-import參數,會有啥問題嗎?還有用python3.
05/27 10:07, 8F

05/27 10:07, 3年前 , 9F
8.x的話,可以安裝PyInstaller, 但在包成exe時,可能有問題
05/27 10:07, 9F

05/27 11:23, 3年前 , 10F
您先用py -3 your.py執行,確定可以執行。再用 py -3 -m Py
05/27 11:23, 10F

05/27 11:23, 3年前 , 11F
Installer <參數> your.py 這樣就可以確定python版本正確
05/27 11:23, 11F

05/27 11:38, 3年前 , 12F
--hidden-import=bs4改成這樣看看?
05/27 11:38, 12F
第一開始的確不用 --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

05/27 14:52, 3年前 , 13F
你不能執行py -3 main.py代表該python環境沒安裝bs4模組
05/27 14:52, 13F

05/27 14:54, 3年前 , 14F
我是原po 但我在pycharm 環境是沒問題 所以你說的
05/27 14:54, 14F

05/27 14:55, 3年前 , 15F
的python 環境不等於 pycharm 環境?
05/27 14:55, 15F

05/27 15:02, 3年前 , 16F
pmove 大 謝謝你
05/27 15:02, 16F

05/27 15:02, 3年前 , 17F
我剛剛google一下 先pip install bs4
05/27 15:02, 17F

05/27 15:02, 3年前 , 18F
然後正常執行 pyinstaller -F main.py 沒問題了
05/27 15:02, 18F

05/27 15:03, 3年前 , 19F
感謝所有板友腦力激盪 十分謝謝
05/27 15:03, 19F

05/30 17:52, 3年前 , 20F
pychram 預設會在 project 資料夾產生一個 venv
05/30 17:52, 20F

05/30 17:53, 3年前 , 21F
所以確實就是 pycharm 的 python 不是你的 pyinstaller
05/30 17:53, 21F

05/30 17:53, 3年前 , 22F
所跑的 python
05/30 17:53, 22F

05/30 17:54, 3年前 , 23F
板上大概有 1/10 的提問都是這個問題XD
05/30 17:54, 23F

05/30 17:57, 3年前 , 24F
google "virtualenv" ,使用 conda 或 pychrame 都是類似
05/30 17:57, 24F

05/30 17:57, 3年前 , 25F
常見問題
05/30 17:57, 25F

06/02 01:51, 3年前 , 26F
所以新手還是用IDLE就好。書上沒事介紹那些比較複雜的又
06/02 01:51, 26F

06/02 01:51, 3年前 , 27F
沒說清楚
06/02 01:51, 27F
文章代碼(AID): #1UpCq3m- (Python)