2017-02-13 85 views
1

我部署了我的项目(搜狗)成功,但是当我运行此:错误运行scrapyd项目

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

失败:

2017-02-13 10:44:51 [scrapy] INFO: Scrapy 1.2.1 started (bot: sogou) 

2017-02-13 10:44:51 [scrapy] INFO: Overridden settings: 
{'NEWSPIDER_MODULE': 'sogou.spiders', 'CONCURRENT_REQUESTS': 5, 
'SPIDER_MODULES': ['sogou.spiders'], 'RETRY_HTTP_CODES': [500, 502, 
503, 504, 400, 403, 408], 'BOT_NAME': 'sogou', 'DOWNLOAD_TIMEOUT': 10, 
'RETRY_TIMES': 10, 'LOG_FILE': 
'logs/sogou/sogou/63a0bbacf19611e69eea240a644f1626.log'} 

2017-02-13 10:44:51 [scrapy] INFO: Enabled extensions: 
['scrapy.extensions.logstats.LogStats', 
'scrapy.extensions.telnet.TelnetConsole', 
'scrapy.extensions.corestats.CoreStats'] 2017-02-13 10:44:51 [twisted] 
CRITICAL: Unhandled error in Deferred: 2017-02-13 10:44:51 [twisted] 
CRITICAL: Traceback (most recent call last): 

    File "/usr/local/lib/python2.7/dist-packages/twisted/internet/defer.py", line 1299, in _inlineCallbacks 
    result = g.send(result) 
    File "/usr/local/lib/python2.7/dist-packages/scrapy/crawler.py", line 90, in crawl 
    six.reraise(*exc_info) 
    File "/usr/local/lib/python2.7/dist-packages/scrapy/crawler.py", line 71, in crawl 
    self.spider = self._create_spider(*args, **kwargs) 
    File "/usr/local/lib/python2.7/dist-packages/scrapy/crawler.py", line 94, in _create_spider 
    return self.spidercls.from_crawler(self, *args, **kwargs) 
    File "/usr/local/lib/python2.7/dist-packages/scrapy/spiders/__init__.py", line 50, in from_crawler 
    spider = cls(*args, **kwargs) 

TypeError: __init__() got an unexpected keyword argument '_job' 
+0

日志说,它未能由于'严重:Deferred'未处理的错误。它也提到了一些源代码文件名。你有没有试过寻找它并找到根本原因?如是;你有什么看法。没有更多的信息,不要期待好的答案。 –

回答

0

这是很难找到没有源代码的问题但很可能你会覆盖你的蜘蛛的__init__,而不是它不接受任意的**kwargs,而scrapyd将作业标识符作为蜘蛛参数传递。在这种情况下,你应该添加**kwargs蜘蛛的构造是这样的:

class Spider(scrapy.Spider): 
    name = 'spider' 

    def __init__(self, param1, param2, **kwargs): 
     ...