2017-02-20 3 views
0

私は(94ように別のケースでは97可能と可能性)数は、場合に応じてランダムに変化なぜScErapyでKeyErrorを取得していますか?

Unhandled Error 
Traceback (most recent call last): 
    File "/usr/lib/python2.7/site-packages/twisted/internet/base.py", line 428, in fireEvent 
     DeferredList(beforeResults).addCallback(self._continueFiring) 
    File "/usr/lib/python2.7/site-packages/twisted/internet/defer.py", line 321, in addCallback 
     callbackKeywords=kw) 
    File "/usr/lib/python2.7/site-packages/twisted/internet/defer.py", line 310, in addCallbacks 
     self._runCallbacks() 
    File "/usr/lib/python2.7/site-packages/twisted/internet/defer.py", line 653, in _runCallbacks 
     current.result = callback(current.result, *args, **kw) 
    --- <exception caught here> --- 
    File "/usr/lib/python2.7/site-packages/twisted/internet/base.py", line 441, in _continueFiring 
     callable(*args, **kwargs) 
    File "/usr/lib/python2.7/site-packages/twisted/internet/base.py", line 667, in disconnectAll 
     selectables = self.removeAll() 
    File "/usr/lib/python2.7/site-packages/twisted/internet/epollreactor.py", line 191, in removeAll 
     [self._selectables[fd] for fd in self._reads], 
    exceptions.KeyError: 94 

を私はセロリの内側Scrapyスパイダーを使用していますが、私はエラーのこの種を取得しています使用:

celery==3.1.19 
Django==1.9.4 
Scrapy==1.3.0 

をこれは私がセロリの内側Scrapyを実行する方法を示します。

from billiard import Process 
from scrapy.crawler import CrawlerProcess 
from scrapy.utils.project import get_project_settings 

class MyCrawlerScript(Process): 
    def __init__(self, **kwargs): 
     Process.__init__(self) 
     settings = get_project_settings('my_scraper') 
     self.crawler = CrawlerProcess(settings) 
     self.spider_name = kwargs.get('spider_name') 
     self.kwargs = kwargs 

    def run(self): 
     self.crawler.crawl(self.spider_name, qwargs=self.kwargs) 
     self.crawler.start() 

def my_crawl_manager(**kwargs): 
    crawler = MyCrawlerScript(**kwargs) 
    crawler.start() 
    crawler.join() 
セロリのタスクの中では、私が呼び出してい

my_crawl_manager(spider_name='my_spider', url='www.google.com/any-url-here') 

は、なぜこれが起こっている任意のアイデアをしてください?

+0

私はほぼ同じ正確なエラーがあります。これに対する解決策はありますか? –

答えて

0

この問題は1度発生しました。

__init__.pyファイルが空の場合は、spidersフォルダにありますか。それはそこにあるはずです。

+0

ありがとう、私はチェックしていると私は欠けている\ _ \ _ init \ _ \ _。コード – mou55

+0

なぜ__init__.pyはそこにありますか?私はこの問題に苦しんではいませんが、私は好奇心が強いです... btw私はそこに__init__ファイルを持っていません –

+0

@AmiHollanderここで答えを読むhttps://stackoverflow.com/questions/448271/what-is-init-py-for – Umair

関連する問題