Я пытаюсь создать один общий паук, который заботится о наиболее распространенных задачах и конкретных пауках, которые наследуют общий и объявляют переменные, специфичные для веб-сайта.
Есть genericspider.py
:
# -*- coding: utf-8 -*-
import scrapy
from scrapy.spiders import Spider, CrawlSpider
class GenericProductSpider(scrapy.Spider):
def __init__(self, start_urls=[], finditemprop='', keywords='', **kwargs):
CrawlSpider.__init__(self, **kwargs)
print ( "\n\n Init Generic \n" )
И затем у меня есть specificspider.py
в том же каталоге, что и общий.
# -*- coding: utf-8 -*-
import scrapy
from scrapy.spiders import Spider, CrawlSpider
from .genericfabric import GenericFabricsSpider
class SpecificSpider(GenericProductSpider):
def __init__(self, **kwargs):
print ( "\n init specific \n" )
name = "specific1"
start_urls = ['http://www.specificdomian.com',]
super(SpecificSpider, self).__init__(name, start_urls, **kwargs)
Кажется, у меня есть проблемы с пониманием того, как правильно вызвать инициализатор суперкласса. Я получаю всевозможные сообщения об ошибках, но метод init стандартного паука никогда не выполнялся.