Python 无法识别windows scrapyd部署
我已经像这样安装了scrapydPython 无法识别windows scrapyd部署,python,python-2.7,scrapy,scrapyd,Python,Python 2.7,Scrapy,Scrapyd,我已经像这样安装了scrapyd pip install scrapyd 我想用剪贴画 当我打字的时候 我在cmd中遇到了这个异常: “scrapyd”不能识别为内部或外部命令、可操作程序或批处理文件 我也遇到了同样的问题,我也读到了一些关于scrapyd不可用/无法在windows上运行的意见,几乎放弃了它(我并不真的需要它,因为我打算部署到linux机器上,希望scrapyd在windows上用于调试)。然而,经过一些研究,我找到了一种方法。由于我还没有找到任何关于这方面的明确说明,我将尽
pip install scrapyd
我想用剪贴画
当我打字的时候
我在cmd中遇到了这个异常:
“scrapyd”不能识别为内部或外部命令、可操作程序或批处理文件
我也遇到了同样的问题,我也读到了一些关于scrapyd不可用/无法在windows上运行的意见,几乎放弃了它(我并不真的需要它,因为我打算部署到linux机器上,希望scrapyd在windows上用于调试)。然而,经过一些研究,我找到了一种方法。由于我还没有找到任何关于这方面的明确说明,我将尽可能详细地给出我的答案,列出所有对我有效的步骤 假设要在本地计算机上运行scrapyd,则需要运行两个命令行:第一个用于连接到scrapyd并保持连接打开,第二个用于部署和调度
- 你已经安装了pip 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'
2014-03-26 13:57:30+0200[-]日志打开。 2014-03-26 13:57:30+0200[-]twistd13.2.0(C:\Python27\python.exe 2.7.6)正在启动。 2014-03-26 13:57:30+0200[-]反应堆等级:twisted.internet.selectreactor.selectreactor。 2014-03-26 13:57:30+0200[-]站点从6800开始 2014-03-26 13:57:30+0200[-]启动工厂 2014-03-26 13:57:30+0200[Launcher]Scrapyd 1.0.1开始:max_proc=16,runner='Scrapyd.runner'
- 如果可以打开浏览器并转到
那你就没事了。命令行窗口应该在后台保持打开状态,因为如果您关闭它,连接将被关闭http://localhost:6800
- 在windows资源管理器上,导航到您的scrapy项目文件夹并编辑在其中找到的scrapy.cfg文件:例如,写入您的部署目标名称:[部署:scrapyd],并取消对url行的注释
- 打开第二个命令行,并将cd刻录到scrapy项目文件夹中。类型:
scrapy部署-l
- 部署:键入:
(scrapyd是您的目标)。您应该得到服务器响应代码200和ok状态。您还可以通过键入:scrapy部署scrapyd-p project\u name
scrapy deploy-L scrapyd
- 计划:您需要安装curl for windows。以下是方法:
类型:
同样,您应该在浏览器中的curlhttp://localhost:6800/schedule.json -d项目=项目名称-d蜘蛛=蜘蛛名称
在“作业”下,您可以检查作业是否确实已安排http://localhost:6800
我希望这有帮助 对我来说,上面提出的解决方案不起作用 下面是对我有用的内容:(适用于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
,那么scrapy
和scrapyd deploy
两个命令都应该可以工作。
@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
如果您使用pip install scrapyd client
安装scrapyed客户端,我建议尝试以下命令:
pip install git+https://github.com/scrapy/scrapyd-client
这对我有用
多亏了scrapyd部署
不起作用?请共享控制台output@pault. 我告诉过你cmd给了我什么,我得到的就是这个窗户?linux?我不是Windows的家伙对不起。我问around@pault. 是否有可能在windows上不提供scrapyd。我发现fomr这个网站是因为没有windows配置。谢谢。请只做一件事。您编写了scrapy deploy-1
,它应该是scrapy deploy-l
True。这是scrapy部署-l
.TL;DR:scrapyd和scrapyd部署脚本可以在python安装的scripts文件夹中找到,它们实际上只是python脚本。一种解决方案是使用python解释器显式地调用它们。在将scrapyd部署文件复制到我的scrapy项目文件夹根目录并将.py
文件扩展名添加到该文件后,我能够使其工作。然后,我可以从命令行调用scrapyd-deploy.py-l
,等等。