簡體   English   中英

Pyinstaller'未能執行'腳本

[英]Pyinstaller 'failed to execute' script

我是編程新手。 我制作了一個 python 腳本。 它在 pycharm 中運行沒有錯誤。 使用 pyinstaller 我嘗試制作一個 exe。 當我在 build 或 dist 文件夾中甚至通過命令提示符運行 exe 時,它給了我錯誤“無法執行 Script Main”

我附上警告文件鏈接:

https://drive.google.com/open?id=1cDQ2KGId0B8K9Qi1bWPIhL55hQO0dM-z

請幫忙!

每個虛擬環境都有一個 pip 腳本。 因此,當您安裝 python 模塊時,它會安裝到 projectname\venv\Lib\site-packages 目錄中。

當您從終端運行 pyinstaller 以生成可執行文件時,pyinstaller 會檢查 Sys.path 中的依賴項。 但該路徑不包括 projectname\venv\Lib\site-packages 目錄。 因此 pyinstaller 找不到那些特定的依賴項。 在這種情況下,它會給您警告。可以在可執行文件附近的“warnname.txt”中找到這些警告。

如何配置 pycharm 運行 pyinstaller

  1. 首先,您需要將 pyinstaller 添加到項目解釋器中。 在此處輸入圖像描述
  2. 然后您需要設置運行配置。 在此處輸入圖像描述 在此處輸入圖像描述

腳本名稱:python 腳本的路徑

工作路徑:項目所在地

保留圖像中的解釋器選項。

  1. 運行 pyinstaller。 您可以在 dist 目錄中找到 your.exe。

  2. 如果“未找到模塊”錯誤仍然存在。 您可以添加一個隱藏的導入鈎子並指定缺少的模塊的名稱。導航到Project Path\venv\Lib\site-packages\PyInstaller\hooks並創建一個新的“ hook-pandas.py ”(hook-modulename.py)腳本並列出隱藏的導入模塊,如下所示:

hiddenimports = ['pandas._libs.tslibs.np_datetime','pandas._libs.tslibs.nattype','pandas._libs.skiplist']
  1. 然后再次運行 pyinstaller,它現在應該可以工作了。

我知道我在 10 個月后寫了這篇文章,但我遇到了同樣的問題,我知道解決方案。 所以,也許一些有同樣問題的人可以得到幫助。

如果您的腳本有任何其他文件,例如 db、csv、png 等,您應該將此文件添加到同一目錄。 這樣你就可以解決我猜的問題。 至少我的問題是這樣解決的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM