#php #python #xampp
#php #python #xampp
Вопрос:
Я хочу запустить свой скрипт Python, используя PHP shell_exec () и xammp на Mac. Когда я запускаю его на терминале, он работает, но когда я запускаю его в браузере, он показывает эту ошибку ‘sh: 1: python3: не найден’
PHP
$command = escapeshellcmd("python3 scrape.py");
$command_output = shell_exec($command." 2>amp;1");
echo $command_output;
Python
#!/usr/bin/env python3
import cgi,cgitb
import urllib.request
from bs4 import BeautifulSoup
from bs4.element import Comment
from datetime import datetime
import re
import json
print ("Content-Type: text/plain;charset=utf-8n")
print("hello")
Комментарии:
1. Вы пытаетесь вызвать
python3
из php, не указывая ему путь (вы не вызываетеscrape.py
, вы передаете его в качестве аргумента файлаpython3
). Вы можете либо добавить его каталог в свой path, либо вызвать его с помощью абсолютного пути.2. Я отредактировал код для этого escapeshellcmd («/usr/local/bin/python3 scrape.py «) и он показывает этот вывод «sh: 1: /usr/local/bin/python3: не найден»
3. Попробуйте
ls -l /usr/local/bin/python3
из своей оболочки, убедитесь, что она существует и является исполняемой.4. он возвращает это: lrwxr-xr-x 1 amplabinc. колесо 69 8 апреля 15:46 /usr/local/bin/python3 -> ../ ../../Library/Frameworks/Python.framework/Versions/3.7/bin/python3
5. Ну, для этого существует символическая ссылка. Попробуйте сделать
ls -lL /usr/local/bin/python3
, чтобы убедиться, что она разрешена (т.Е. ДобавитьL
).