簡體   English   中英

通過shell_exec調用的Scrapy腳本無法執行

[英]Scrapy Script called via shell_exec doesn't perform

我在這條路上有一只沙啞的蜘蛛:

define("SPIDER_PATH", "C:\\Users\\[USERNAME]\\test1\\test1\\spiders\\test.py");

現在,我嘗試通過php啟動腳本:

if (is_numeric(filter_input(INPUT_POST, "reload"))) {
    $additional = " -a check=" . filter_input(INPUT_POST, "reload");

}
echo shell_exec("scrapy runspider " . SPIDER_PATH . $additional);

但是什么也沒發生,shell_exec也沒有回聲。

我已經在使用wamp的本地計算機上對其進行了測試。

誰能幫我?

正確設置了環境變量(至少我可以通過Windows cmd.exe調用完全相同的命令

您不能通過PHP的方式運行scrapy。

您需要的是拼湊的。

https://scrapyd.readthedocs.org/en/latest/install.html

安裝后。 進入您的項目目錄:C:\\ Users \\ [USERNAME] \\ test1 \\

創建/編輯包含內容的scrapy.cfg文件:

[settings]
default = crawler.settings

[deploy]
url = http://localhost:6800/
project = crawler

運行命令

scrapyd-deploy -l

它將列出您的可用目標:

default              http://localhost:6800/

現在您需要部署一個項目:

scrapyd-deploy default -p test1

有關部署項目的更多信息: https : //scrapyd.readthedocs.org/en/latest/deploy.html

部署項目后,您可以丟棄帶有curl請求的蜘蛛:

curl http://localhost:6800/schedule.json -d project=test1 -d spider=test

有關scrapyd API的更多信息: https ://scrapyd.readthedocs.org/en/latest/api.html

您需要先調用chdir()

chdir("C:\\Users\\[USERNAME]\\test1\\test1\\spiders\\test.py");
echo shell_exec("scrapy runspider " . $additional);

暫無
暫無

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

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