首页 > 解决方案 > 使用 Laravel 执行 Python 脚本?

问题描述

我正在尝试在 Laravel 5.8 项目中执行 python 脚本,但我遇到了 Symfony/process 类的问题。

基本上,我想运行这个从存储文件夹中获取 excel 表单的 python 脚本。

我的第一次尝试是这个

$process = new Process('C:\Python\python.exe C:\Users\"my path"\laravel\storage\app\images\cargaExcel.py');

$process->run();

if (!$process->isSuccessful()) {
    throw new ProcessFailedException($process);
}

echo $process->getOutput();

错误是

Fatal Python error: _Py_HashRandomization_Init: failed to get random numbers to initialize Python

我也尝试过shell_exec(),如果这两个文件(excel 和 python 脚本在公共路径 - app/public 中)它可以工作。

我认为问题在于 python 只在 app/public 文件夹上执行,所以我不知道如何在另一个路径中运行它。

Python 输出告诉我:

Working directory: C:\Users\"my path"\laravel\public

有谁知道如何运行这个?

标签: python-3.xlaravelsymfony

解决方案


推荐阅读