Vin*_*ndo 6 python django web-crawler scrapy
我在django视图中调用scrapy蜘蛛时遇到了麻烦.我怎样才能做到这一点?我尝试按照本教程http://tryolabs.com/Blog/2011/09/27/calling-scrapy-python-script/,但在导入设置中无效.
如果错误来自
from scrapy.conf import settings
Run Code Online (Sandbox Code Playgroud)
这可能是因为 scrapy 根本找不到它所期望的设置文件。由于 Django 习惯上使用settingsdjango 自己的配置,因此如果您不使用该术语,那就更清楚了。
您可以在 Django 设置中指定 scrapy 设置:
"""settings.py"""
# stuff
SCRAPY_SETTINGS = {
... # put your usual scrapy keys and values here
}
# more stuff
Run Code Online (Sandbox Code Playgroud)
然后,scrapy.conf.settings您可以使用以下命令来代替 import :
from django.conf import settings
Run Code Online (Sandbox Code Playgroud)
当您在脚本中引用 scrapy 设置时,您应该将 CrawlerProcess 的参数更改为 settings.SCRAPY_SETTINGS
self.crawler = CrawlerProcess(settings.SCRAPY_SETTINGS)
Run Code Online (Sandbox Code Playgroud)
如果您还有任何其他问题,请发布您收到的完整错误以及您的视图代码。