class MongoDBClient(object):
def __init__(self, dataset):
"""
初始化 MongoDB 链接
:param 数据库的键值:
:param value:
"""
self.client = pymongo.MongoClient(MONGODB_URL)
self.db = self.client.moss
self.dataset = eval('self.db.{}'.format(dataset + str(time.strftime('%Y%m%d', time.localtime(time.time())))))
def insert_one(self, value):
"""
往 MongoDB 数据库中存入一条数据
:param value: 要插入的数据
:return: 返回插入数据的 ID
"""
return self.dataset.insert_one(value).inserted_id
def insert_many(self, values):
"""
往 MongoDB 数据库中存入多条数据
:param values: 要插入的数据列表
:return: 返回插入数据的 ID 列表
"""
return self.dataset.insert_many(values).inserted_ids
def find_one(self, query):
"""
查询 MongoDB 中符合条件的一条数据
:param query: 查询条件
:return: 返回符合条件的一条数据,如果没有则返回 None
"""
return self.dataset.find_one(query)
def find(self, query):
"""
查询 MongoDB 中符合条件的所有数据
:param query: 查询条件
:return: 返回符合条件的数据列表,如果没有则返回空列表
"""
return list(self.dataset.find(query))
def update_one(self, filter, update):
"""
更新 MongoDB 中符合条件的一条数据
:param filter: 查询条件
:param update: 更新操作
:return: 返回更新结果的信息
"""
return self.dataset.update_one(filter, update)
def update_many(self, filter, update):
"""
更新 MongoDB 中符合条件的所有数据
:param filter: 查询条件
:param update: 更新操作
:return: 返回更新结果的信息
"""
return self.dataset.update_many(filter, update)
def delete_one(self, query):
"""
删除 MongoDB 中符合条件的一条数据
:param query: 查询条件
:return: 返回删除结果的信息
"""
return self.dataset.delete_one(query)
def delete_many(self, query):
"""
删除 MongoDB 中符合条件的所有数据
:param query: 查询条件
:return: 返回删除结果的信息
"""
return self.dataset.delete_many(query)
def count_documents(self, query=None):
"""
统计 MongoDB 中符合条件的数据数量
:param query: 查询条件
:return: 返回符合条件的数据数量
"""
return self.dataset.count_documents(query)
def distinct(self, key, query=None):
"""
查询 MongoDB 中指定字段的去重值
:param key: 指定的字段名
:param query: 查询条件
:return: 返回去重值列表
"""
return self.dataset.distinct(key, query)
def aggregate(self, pipeline):
"""
对 MongoDB 中的数据进行聚合操作
:param pipeline: 聚合操作列表
:return: 返回聚合结果
"""
return list(self.dataset.aggregate(pipeline))
Python MongoDB方法类
最新推荐文章于 2024-10-17 17:14:17 发布
该代码定义了一个MongoDBClient类,用于初始化MongoDB连接并提供数据操作接口,包括插入单条/多条数据,查询单条/所有数据,更新单条/多条数据,删除单条/多条数据,以及统计文档数量和字段去重等功能。
摘要由CSDN通过智能技术生成