mongodb去重pymongo实现

本文介绍了一种使用Python和pymongo库对MongoDB数据库进行数据清洗和去重的方法。通过查找并删除重复记录,确保数据集的准确性和效率。此过程包括连接到本地MongoDB服务器,从特定集合读取数据,去除重复项,并将清洗后的数据保存到新的数据库集合中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# -*- coding: UTF-8 -*-
_author_ = 'zy'
_date_ = '2018/12/13 0013 0:01'
import pymongo

def savedb(dbname,data):
    client = pymongo.MongoClient('127.0.0.1', 27017)  # 缺少一步骤进行属性的清洗操作,确定是否有这个值
    db = client.weibo
    db[dbname].insert(data)

def dealwith(dbname,dbnew):
    client = pymongo.MongoClient('127.0.0.1', 27017)  # 缺少一步骤进行属性的清洗操作,确定是否有这个值
    db = client.weibo
    cursor=db[dbname].find()
    list=[]
    for i in cursor:
        id=i['weibo_id']
        if id in list:
            pass
        else:
            list.append(id)
            data={
                'weibo_id':i['weibo_id'],
                'created':i['created'],
                'uid_name':i['uid_name'],
                'uid':i['uid'],
                'level':i['level'],
                'area':i['area'],
                'url':i['area'],
                'text':i['comment'],#area
                'area':i['area'],
            }
            savedb(dbnew,data)
    begin=db[dbname].count()
    after=len(list)
    print('去重前'+str(begin)+'去重后'+str(after))
#4132
if __name__=='__main__':
  dealwith('all','new_comment')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值