使用scrapyd部署项目时出错

时间:2012-07-06 12:48:05

标签: python scrapy scrapyd

我的项目文件夹中有多个蜘蛛,想要一次运行所有蜘蛛,所以我决定使用scrapyd服务运行它们。 我已经通过查看here

开始这样做了

首先,我在当前项目文件夹

  1. 我打开了scrapy.cfg文件并在

    之后取消注释了网址行

    [部署]

  2. 我已经运行scrapy server命令,运行良好,并且还有一些服务器运行

  3. 我尝试了这个命令scrapy deploy -l

    结果:default http://localhost:6800/

  4. 当我尝试此命令时scrapy deploy -L scrapyd我得到了以下输出
  5. 结果:

    Usage
    =====
      scrapy deploy [options] [ [target] | -l | -L <target> ]
    
    deploy: error: Unknown target: scrapyd
    

    当我尝试使用此命令部署项目时scrapy deploy scrapyd -p default出现以下错误

    Usage
    =====
      scrapy deploy [options] [ [target] | -l | -L <target> ]
    
    deploy: error: Unknown target: scrapyd
    

    我真的无法识别whey scrapyd是否显示上述错误,可以引导我以正确的方式将项目部署到scrapyd

    提前致谢..........

    已编辑的代码

    在看到Peter Kirby的答案后,我在scrapy.cfg中命名了target并在我的项目文件夹中尝试了以下命令,

    命令

    scrapy deploy ebsite -p ebsite
    

    然后我得到了以下错误

    Building egg of ebsite-1341808241
    'build/lib' does not exist -- can't clean it
    'build/bdist.linux-x86_64' does not exist -- can't clean it
    'build/scripts-2.7' does not exist -- can't clean it
    zip_safe flag not set; analyzing archive contents...
    Deploying ebsite-1341808241 to http://localhost:6800/addversion.json
    Deploy failed: <urlopen error [Errno 111] Connection refused>
    

    如何解决这个问题.....

4 个答案:

答案 0 :(得分:10)

来自scrapyd服务文档:(http://scrapy.readthedocs.org/en/latest/topics/scrapyd.html?highlight=scrapyd)

  

您可以通过将目标添加到项目的scrapy.cfg来定义目标   file ...这是一个定义新目标scrapyd2的示例   通过HTTP基本身份验证限制访问:

[deploy:scrapyd2]
url = http://scrapyd.mydomain.com/api/scrapyd/
username = john
password = secret

基本上你的错误意味着你的目标&#34;名字不正确。如果我没记错的话,scrapy.cfg文件将初始目标名称设置为&#34;默认为&#34;。您应该键入的内容如下:

scrapy deploy default -p project_name

答案 1 :(得分:1)

如果您没有命名目标并且默认设置为左设置,只需键入scrapy deploy即可!

答案 2 :(得分:0)

这是scrapyd proc没有权限! 你需要杀死proc,然后使用root用户,只需输入:

scrapy server

然后新的报废将运行。然后你可以按scrapyd documention说。

答案 3 :(得分:0)

当我尝试在没有运行scrapyd的情况下部署项目时出现此错误,这么简单的运行

scrapyd

在另一个终端上修复了错误