так что я пытаюсь сделать вещи чище с использованием предметов и трубопроводов. На данный момент мои настройки для конвейеров (в settings.py):
ITEM_PIPELINES = {
'scrapybot.pipelines.CsvPipeline': 300,
}
Передает содержимое (как тест) в pipelines.py в ту же папку, что и настройки:
class CsvPipeline(object):
def process_item(self, item, spider):
print("it works")
return item
Я запускаю своих двух пауков из одного файла с именем core, который находится в той же папке, что и конвейеры и настройки:
import scrapy
from scrapy.crawler import CrawlerProcess
from scrapy.settings import Settings
from scrapy.utils.project import get_project_settings
from spiders.carrefour_bot import CarrefourSpider
from spiders.ebay_bot import EbaySpider
process = CrawlerProcess(get_project_settings())
process.crawl(CarrefourSpider)
process.crawl(EbaySpider)
process.start()
и предметы. Элементы находятся не в этой папке, а в папке пауков:
class ScrapybotItem(scrapy.Item):
ean = scrapy.Field()
desc = scrapy.Field()
price = scrapy.Field()
company = scrapy.Field()
Я называю их так у обоих пауков:
from spiders.items import ScrapybotItem
Меня беспокоит то, что трубопроводы не открываются. У меня в терминале:
INFO: Enabled item pipelines:
[]
В какой-то момент это сработало, я тестировал конвейеры с помощью CSVItemExporter. но по одной причине теперь мои конвейеры не открываются, даже в основной форме, которую я разместил. Есть идеи?