2013-02-13 23 views
6

私はDjangoビューでスクラピースパイダーを呼び出すのに問題があります。これどうやってするの? このチュートリアルhttp://tryolabs.com/Blog/2011/09/27/calling-scrapy-python-script/に従ってみましたが、インポート設定では機能しませんでした。Django AppでScrapy Spiderを呼び出す方法

+1

完全なエラーメッセージを投稿してください。ありがとうございました。 – bernie

+0

[django dynamic scraper](https://github.com/holgerd77/django-dynamic-scraper)を使用してください。 –

+2

そのスクリプトは幾分古くなっていて、その後も多くの変更がありました。この質問への答えを試してください:http://stackoverflow.com/questions/14777910/scrapy-crawl-from-script-always-blocks-script-execution-after-scraping – Talvalin

答えて

2

エラーが

from scrapy.conf import settings 

から来ている場合scrapyは、単に設定は、それは期待のファイルを見つけることができないので、それは可能性があります。 Djangoでは通常、settingsをdjango自身の設定に使用するので、その用語を使用しないと最も明確になります。

あなたのDjangoの設定の中に、あなたのscrapyの設定を指定することができます。

"""settings.py""" 
# stuff 

SCRAPY_SETTINGS = { 
    ... # put your usual scrapy keys and values here 
} 

# more stuff 

をその後、代わりにscrapy.conf.settingsをインポートするの、あなたの代わりに使用することができます。

from django.conf import settings 

、あなたのスクリプトでscrapyの設定を参照しCrawlerProcessの引数をsettingsに変更する必要があります.CRAPY_SETTINGS

self.crawler = CrawlerProcess(settings.SCRAPY_SETTINGS) 

さらに問題がある場合は、表示されている完全なエラーとあなたのビューのコードを投稿してください。

0

あるいは、あなたはそうのようなオブジェクトの設定を作成することができます。

from scrapy.settings import Settings 
settings = Settings() 
settings.setmodule('path.to.scrapy.settings', priority='project') 
関連する問題