código pipeline.pyenvío de correo electrónico después de raspadura en scrapy
class Examplepipeline(object):
def __init__(self):
dispatcher.connect(self.spider_opened, signal=signals.spider_opened)
dispatcher.connect(self.spider_closed, signal=signals.spider_closed)
def spider_opened(self, spider):
log.msg("opened spider %s at time %s" % (spider.name,datetime.now().strftime('%H-%M-%S')))
def process_item(self, item, spider):
log.msg("Processsing item " + item['title'], level=log.DEBUG)
def spider_closed(self, spider):
log.msg("closed spider %s at %s" % (spider.name,datetime.now().strftime('%H-%M-%S')))
En el código anterior araña, se mostrará la hora de inicio y hora de finalización de la araña, pero ahora después de la finalización de la araña, quiero recibir un mensaje de correo electrónico que dice "Scraping ha sido completado" de scrapy. Es posible hacer esto. Si es posible, podemos escribir ese código en el método spider_closed, ¿alguien puede compartir algún código de ejemplo sobre cómo hacerlo?
Gracias por eso es muy útil respuesta –
Hola, podría alguien decirme dónde poner en estos códigos? pipeline.py o el archivo sider principal. No tengo ides.Gracias – user2492364
@ user2492364 no hay una respuesta específica, depende de la lógica de su negocio. Por ejemplo, si desea enviar un informe, podría hacerlo en la tubería, pero preferiría captar la señal de cierre de araña y luego enviar el correo –