выполнение сценария Python Laravel - PullRequest
7 голосов
/ 06 марта 2019

Я должен выполнить скрипт Python, который вытягивает большой объем данных в базу данных.Он работает нормально, пока я работаю над проектом, используя команду PHP artisan serve.Но это вызывает ошибку после вызова URL-адреса общедоступной папки, как показано ниже

localhost/project/public

Ошибка:

Команда "python / opt / lampp / htdocs / laravel / projectname / beta/projectname/public/python/pubmed_abstract/pubmed_engine.py '{"term": "Cancer"}' "не удалось.

Код выхода: 1 (общая ошибка) Рабочий каталог: / opt / lampp / htdocs / laravel / infocytosis / beta / infocytosis / public Вывод:

================ Ошибка вывода: ================

Traceback (последний вызов был последним): Файл "/ opt / lampp / htdocs / laravel/projectname/beta/projectname/public/python/pubmed_abstract/pubmed_engine.py ", строка 5, из Bio import Entrez ImportError: Нет модуля с именем Bio

Код, который я использовал:

   $python_path=public_path().'/python/doom_abstract/doom_engine.py';

   $variables='{"term":"'.addslashes($request->term).'"}';

   $process = new Process("python $python_path '$variables'");
   $process->run(); 

  return redirect()->back()->withMessage('Filter saved successfully');

1 Ответ

0 голосов
/ 24 марта 2019

Вместо:

$process = new Process("python $python_path '$variables'");
$process->run(); 

как насчет

shell_exec("python $python_path '$variables'")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...