我避免使用Scrapy样板生成器,因为我的代码将集成到更广泛的项目中。
我当前的项目树如下:
/ test
|- items.py
|- pipelines.py
|- spider.py
我的pipeline.py
包含一个如下所示的管道:
import pymongo
class MongoPipeline(object):
collection_name = 'pages'
[... rest of the pipeline class ...]
如何在spider.py
中使用此类而不使用settings.py
文件和scrapy.conf
?
我尝试导入管道类并在ITEM_PIPELINES
中设置custom_settings
,但是会抛出ValueError: Error loading object 'MongoPipeline': not a full path
:
from pipelines import MongoPipeline
class MySpider(CrawlSpider):
name = 'x'
allowed_domains = ['x']
start_urls = ['x']
custom_settings = {
'ITEM_PIPELINES': {
'MongoPipeline': 100
}
}
def parse(self, response):
[...]
答案 0 :(得分:1)
应该是:
custom_settings = {
'ITEM_PIPELINES': {
'YourProjectName.pipelines.MongoPipeline': 100
}
}