C'est une méthode pour écrire une fonction qui s'accroche au début et à la fin de spider.
Placez le contenu suivant directement sous le projet.
import scrapy
class SpiderHook(object):
@classmethod
def from_crawler(cls, crawler):
ext = cls
crawler.signals.connect(ext.spider_opened, signal=scrapy.signals.spider_opened)
crawler.signals.connect(ext.spider_closed, signal=scrapy.signals.spider_closed)
return ext
def spider_opened(self, spider):
#Traitement au début de l'araignée
def spider_closed(self, spider):
#Traitement à la fin de l'araignée
Ensuite, écrivez les paramètres pour charger cette classe dans settings.py.
EXTENSIONS = {
'<project name>.<file name>. SpiderHook': 100,
}
référence: https://doc.scrapy.org/en/latest/topics/extensions.html
Recommended Posts