我已经像这样安装了scrapyd
pip install scrapyd
我想使用scrapyd-deploy
当我输入scrapyd
时我在cmd中遇到了这个例外:
' scrapyd'不被识别为内部或外部命令,可操作程序或批处理文件。
答案 0 :(得分:13)
我遇到了同样的问题,我也读到了一些意见,表示scrapyd不可用/无法在Windows上运行并且几乎放弃了(我并不真正需要它)在部署到Linux机器上,希望在Windows上使用scrapyd进行调试。然而,经过一些研究,我发现了一种方法。由于我没有找到任何明确的指示,我会尽量详细说明我的答案,列出对我有用的所有步骤。
假设您要在本地计算机上运行scrapyd,您将需要运行两个命令行:第一个用于连接到scrapyd并保持连接打开,第二个用于部署和调度。
您已经安装了scrapyd。
在此文件夹中创建一个文件夹C:\ scrapyd和一个名为scrapyd.log的空.log文件(不确定此步骤是否必要)。
打开你的cmd并cd到Python里面的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行。
< / LI>打开第二个命令行并cd到您的scrapy项目文件夹。输入:scrapy deploy -l
部署:输入:scrapy deploy scrapyd -p project_name
(scrapyd是您的目标)。您应该获得服务器响应代码200和ok状态。您也可以输入以下内容来检查部署是否成功:scrapy deploy -L scrapyd
调度:您需要为Windows安装curl。以下是:questions/9507353/steps-to-setup-curl-in-windows
输入:curl http://localhost:6800/schedule.json -d project=project_name -d spider=spider_name
同样,您应该获得一个正常状态,并且在http://localhost:6800
的浏览器中,您可以检查作业是否确实已安排。
我希望这会有所帮助。
答案 1 :(得分:1)
对我来说,上面提出的解决方案并没有起作用。
以下对我有用:(对于版本0.24中的scrapy)。
转到C:\Python27\Scripts
并创建两个文件:
scrapy.bat
scrapyd-deploy.bat
使用记事本编辑这两个文件并粘贴:
在scrapy.bat
文件中:
@echo off
c:\Python27\python c:\Python27\Scripts\scrapy %*
在scrapyd-deploy.bat
文件中:
@echo off
c:\Python27\python c:\Python27\Scripts\scrapyd-deploy %*
然后保存这些文件并重新启动cmd。
如果C:\Python27\Python
中有C:\Python27\Scripts
和PATH
,那么scrapy
和scrapyd-deploy
这两个命令都应该有效。
答案 2 :(得分:1)
如果您使用pip install scrapyd-client
安装scrapyed-client,我建议尝试以下命令:
pip install git+https://github.com/scrapy/scrapyd-client
对我有用。
答案 3 :(得分:0)
Marcin Rapacz的回答对我有用。但是,我用anaconda管理我的 python库。因此,文件应该在&#34; C:\ Program Files(x86)\ Anaconda3 \ Scripts&#34;中,文件中的内容应该改为:
@echo off
"C:\Program Files (x86)\Anaconda3\python.exe" "C:\Program Files
(x86)\Anaconda3\Scripts\scrapyd-deploy" %1 %2 %3 %4 %5 %6 %7 %8 %9