zoukankan      html  css  js  c++  java
  • 爬虫数据去重

    使用数据库建立关键字段(一个或者多个)建立索引进行去重

    根据url地址进行去重

    使用场景:url地址对应的数据不会变的情况,url地址能够唯一判别一条数据的情况

    思路:

      url存在Redis中

      拿到url地址,判断url在Redis的集合中是否存在

        存在:说明url地址已经被请求过了,不在请求

        不存在:说明url地址没有被请求过,请求,把该url地址存入Redis的集合中

    布隆过滤器:

      使用多个加密算法加密url地址,得到多个值

      往对应值的位置把结果设置为1

      新来的一个url地址,一样通过加密算法生成多个值

        如果对应位置的值全为1,说明这个url地址已经被抓取过了

        否则没有被抓取过,就把对应的位置的值设置为1

    根据数据本身进行去重:

      选择特定的字段(能够唯一标识数据的字段),使用加密算法(MD5,sha1)将字段进行加密,生成字符串,存入Redis的集合中

      后续新来一条数据,同样的方式进行加密,

        如果得到的字符串在Redis中存在,说明数据存在,对数据进行更新,

        否则说明数据不存在,对数据进行插入。

  • 相关阅读:
    软件配置管理
    VS2008单元测试之NUnit集成与应用(转)
    说说委托,匿名委托,Lamda表达式
    六种方式实现hibernate查询
    AjaxControl验证占位问题
    UL+Li常用效果
    Linq 方法表
    让枚举成员显示出中文信息(转)
    Linq to SQL 插入和获取ID
    正则表达式收集
  • 原文地址:https://www.cnblogs.com/zhiliang9408/p/10023664.html
Copyright © 2011-2022 走看看