[請益] PHP執行Python requests套件

看板PHP作者 (elephant)時間3年前 (2020/05/20 01:16), 編輯推噓3(3014)
留言17則, 5人參與, 3年前最新討論串1/1
請問版上各位高手 我用的環境是google GCP Ubuntu 用PHP去exec簡單的python是print的出來 例如以下 [execpython.php] <?PHP $command = escapeshellcmd('python test.py'); $output = shell_exec($command); echo $output; ?> [test.py] a = 1 print( a + 2) print(1,2,3) 但如果是去call含有request套件的py就完全無反應,但在終端機執行是OK 例如以下這支(URL有改成正常網站) https://imgur.com/NeIsVx5
小弟有稍微爬一下,好像是說Apache環境變數要改!?不太曉得確切原因... 麻煩各位大神了~先叩謝大家 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.137.82.144 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1589908586.A.2C5.html

05/20 09:06, 3年前 , 1F
因為php的user跟你直接下cmd的shell不一樣,環境變數也
05/20 09:06, 1F

05/20 09:07, 3年前 , 2F
不一樣, 所以python沒辦法找到package, 你要告訴python
05/20 09:07, 2F

05/20 09:08, 3年前 , 3F
request套件的位置在那邊才能跑
05/20 09:08, 3F

05/20 09:09, 3年前 , 4F

05/20 11:29, 3年前 , 5F
是說有點好奇,為何不用純 PHP 的方案?
05/20 11:29, 5F

05/20 11:30, 3年前 , 6F
像是 php-html-parser,雖然人氣是比漂亮湯還要低...
05/20 11:30, 6F

05/20 14:14, 3年前 , 7F
因為python爬蟲比較好寫,尤其是多執行緒狀況下
05/20 14:14, 7F

05/20 14:17, 3年前 , 8F
php大多跑web,通常是靠httpd來擠多執行緒,自己的多執行
05/20 14:17, 8F

05/20 14:19, 3年前 , 9F
緒很難寫,加上大數據風行,所以後台任務大多用py寫了
05/20 14:19, 9F

05/20 14:24, 3年前 , 10F

05/20 14:26, 3年前 , 11F
pthreads已死,parallel再生,PCNTL不知所云
05/20 14:26, 11F

05/20 14:28, 3年前 , 12F
py的threading就簡單多了,反正php的多執行緒就是爛
05/20 14:28, 12F

05/20 18:39, 3年前 , 13F
pcntl 就...老派...(遠目
05/20 18:39, 13F

05/20 18:40, 3年前 , 14F
不過如果是這個方向,直覺是不會從網頁發動
05/20 18:40, 14F

05/21 04:42, 3年前 , 15F
python跑虛擬機嗎? 有的話你py檔要指定環境
05/21 04:42, 15F

05/22 02:01, 3年前 , 16F
用Flask或Django包成api再用呢
05/22 02:01, 16F

06/23 14:27, 3年前 , 17F
Swoole呢?
06/23 14:27, 17F
文章代碼(AID): #1Un1HgB5 (PHP)
文章代碼(AID): #1Un1HgB5 (PHP)