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