用python scrapy 写东西用的小思路  Item Pipeline

1.---------------------------

最近在采百度贴吧,

思考的过重问题 与 采集原信息入库问题

至于重复问题本想 可以建一个url 放在数据库里.这样在pipelines 里入库前对比一下

现在想来可以直接用/p/ 后面的数据来对比了.因为后面的数据现也是唯一的.似乎好像是按时间上升的.这样数据的重复性唯与入库时间问题好像都可以解决了.

思路:

重复过滤器

假设我们的item里面的id字典是唯一的,但是我们的蜘蛛返回了多个相同id的item

from scrapy.exceptions import DropItem

class DuplicatesPipeline(object):

    def __init__(self):
        self.ids_seen = set()

    def process_item(self, item, spider):
        if item['id'] in self.ids_seen:
            raise DropItem("Duplicate item found: %s" % item)
        else:
            self.ids_seen.add(item['id'])
            return item


信息来源地址:Scrapy笔记(6)- Item Pipeline  http://www.tuicool.com/articles/rmi222Q

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值