![](/img/trans.png)
[英]No module named 'scipy' after creating exe with pyinstaller
[英]Error creating .exe (pyinstaller) with cloudscraper module
我正在嘗試從我的 python 腳本創建 an.exe。 該腳本使用cloudscraper package。 當我創建 .exe 並執行它時,它顯示以下錯誤:
FileNotFoundError: [Errno 2] No such file or directory: 'C:\\...\\MEI1....\\cloudscraper\\user_agent\\browsers.json'
該錯誤僅在我嘗試執行該.exe 文件時出現。
為什么會這樣? pyinstaller 無法使用 cloudcraper 嗎?
項目結構如下所示:
C:\Users\andre\OneDrive\Documentos\Programming\Python\Python3\proyect
proyect
|
|______ main.py
|
|______ services
|________ __init__.py
|_______ main_service.py
|_______ sql_service.py
這與我的項目結構非常相似,因為很明顯,我無法分享我項目的實際項目結構。
檢查此鏈接: https://stackoverflow.com/a/64586862/14509818
或者
在創建 exe 時添加此命令。
--add-data "path_for_cloudscraper_folder;./cloudscraper/"
將path_for_cloudscraper_folder替換為您的 cloudscraper 文件夾的路徑。
您可以從 PC 瀏覽並找到您的 cloudcraper 文件夾路徑,或從 github 下載。
這里./cloudscraper/用於在 output 的根目錄下添加 cloudscraper 文件夾。 (期望它在根目錄中搜索丟失的 cloudcraper 文件夾)
您的 .exe 文件正在尋找 browsers.json,但您沒有將該文件移動到與 .exe 文件相同的路徑。 使用 pyinstaller 需要有處理相對路徑和絕對路徑的良好經驗,否則,您將面臨此類錯誤。
如果 cloudcraper 不是您的項目樹的一部分(可能是隱藏的導入):
找到的解決方案是將所需的文件夾復制到 .exe 路徑中,但就目前而言,我發現如果您使用--onefile
修飾符創建 .exe ,則無法實現,而不是您不應該使用它並在such.exe路徑中復制cloudscraper文件夾,這應該可以
注意:路徑不是父文件夾 cloudcraper ,而是嵌套文件夾,其中包含user_agent
文件夾
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.