我已经这样安装了刮板机
pip install scrapyd
我想用scrapyd部署
当我输入scrapyd
我在命令中发现了这个异常:
“scrapyd”不能识别为内部或外部命令、可操作程序或批处理文件。
最佳答案
我遇到了同样的问题,我还读到一些观点,认为scrapyd不可用/不能在windows上运行,几乎放弃了它(我并不真的需要它,因为我打算部署到linux机器,希望scrapyd在windows上用于调试)。然而,经过一些研究,我找到了一种方法。由于我还没有找到任何明确的说明,我会尽量使我的答案详细,列出所有的步骤,为我工作。
假设要在本地计算机上运行scrapyd,则需要运行两个命令行:第一个命令行用于连接到scrapyd并保持连接打开,第二个命令行用于部署和调度。
你已经安装了scrapyd。
在此文件夹中创建一个文件夹C:\ scrapyd和一个名为scrapyd.log的空.log文件(不确定是否需要此步骤)。
在Python中打开cmd和cd到Scripts文件夹。这通常类似于:C:\ Python27\Scripts。类型:python scrapyd
在这一点上,你应该看到这样的东西:
2014-03-26 13:57:30+0200 [-] Log opened.
2014-03-26 13:57:30+0200 [-] twistd 13.2.0 (C:\Python27\python.exe 2.7.6) starting up.
2014-03-26 13:57:30+0200 [-] reactor class: twisted.internet.selectreactor.SelectReactor.
2014-03-26 13:57:30+0200 [-] Site starting on 6800
2014-03-26 13:57:30+0200 [-] Starting factory <twisted.web.server.Site instance at 0x0000000003F69208>
2014-03-26 13:57:30+0200 [Launcher] Scrapyd 1.0.1 started: max_proc=16, runner='scrapyd.runner'
如果您可以打开浏览器并转到
http://localhost:6800
则可以。命令行窗口在后台应保持打开状态,因为如果关闭它,连接将关闭。在windows资源管理器上,导航到scrapy项目文件夹并编辑其中找到的scrapy.cfg文件:例如,写入部署目标名称:[deploy:scrapyd],然后取消对url行的注释。
打开第二个命令行和cd到您的scrapy项目文件夹。类型:
scrapy deploy -l
部署:类型:
scrapy deploy scrapyd -p project_name
(scrapyd是您的目标)。您应该得到一个服务器响应代码200和一个ok状态。您也可以通过键入:scrapy deploy -L scrapyd
来检查部署是否成功计划:您需要安装curl for windows。方法如下:questions/9507353/steps-to-setup-curl-in-windows
类型:
curl http://localhost:6800/schedule.json -d project=project_name -d spider=spider_name
同样,您应该获得一个ok状态,并且在浏览器的jobs下的
http://localhost:6800
中,您可以检查该作业是否确实被调度过。我希望这能有帮助。
关于python - Windows scrapyd-deploy无法识别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22646323/