pipeline.py代码发送电子邮件刮后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')))
在上面的蜘蛛的代码,它会显示开始时间和蜘蛛的结束时间,但是现在的完成后,蜘蛛,我想收到一封来自scrapy的“Scraping已完成”的邮件。是否有可能做到这一点。如果可能,我们可以用spider_closed方法编写代码,任何人都可以分享一些示例代码来了解如何执行此操作。
感谢您的回复这就是真正有用的 – 2012-07-10 10:25:20
您好,可能有人请告诉我在哪里把这些代码? pipeline.py或主要的sider文件。我没有ide。谢谢 – user2492364 2014-08-27 02:25:03
@ user2492364有没有具体的答案,这取决于你的业务逻辑。例如,如果你想发送报告,你可以在流水线上做到这一点,但我更喜欢捕捉蜘蛛关闭信号,然后发送邮件 – 2015-03-19 13:30:40