簡體   English   中英

在 WSL2 Ubuntu 中使用 Laravel 運行 Python 會導致“找不到模塊”

[英]Running Python using Laravel inside WSL2 Ubuntu causes “modules not found”

我有一個 WSL2 Ubuntu 設置了運行 python 腳本所需的一切。

我還使用了一個 Laravel 應用程序,它使用 Symfony/Process 來運行所說的 python 腳本。

但是當我使用 Laravel 應用程序運行腳本時,它告訴我沒有安裝該腳本所需的模塊。

我驗證它安裝在我的 Ubuntu 系統中,甚至使用 CLI 運行腳本。

這就是我在 Laravel Controller 中用於我的流程的內容

$process = new Process(['/bin/python3', base_path() . /resources/python/pythonscript.py']

這就是我用於 CLI 命令的內容

/bin/python3 /var/www/laravel/resources/python/pythonscript.py

(我也可以只使用 python3,但我想確保使用 /bin/python3 有效。)

重申一下,CLI 運行良好,而 Laravel Controller 給了我一個

ModuleNotFoundError:沒有名為“sklearn”的模塊

有什么建議嗎?

問題是組 www-data 無權訪問我安裝模塊的位置。 在我的默認 $user 中。

為了解決這個問題,我必須使用 sudo 安裝模塊。

e.x sudo pip3 install yfinance

不太確定這是否是一個好的解決方案,但它是一個適合我的解決方案。

暫無
暫無

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

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