美文网首页
python mongoDB操作

python mongoDB操作

作者: camlboy | 来源:发表于2017-04-25 15:55 被阅读56次
class MongoClient(object):
    def __init__(self, db_name, collections_name):
        super(MongoClient, self).__init__()
        host = settings[MongoConstant.MONGO_SERVER]
        port = settings[MongoConstant.MONGO_PORT]

        self.__check_settings(host, port, db_name, collections_name)

        db = pymongo.MongoClient(host, port)[str(db_name)]

        user = settings[MongoConstant.MONGO_USER]
        password = settings[MongoConstant.MONGO_PASSWD]
        if user is not None and password is not None:
            db.authenticate(user, password)

        self.collections = {}
        if isinstance(collections_name, list) or isinstance(collections_name, tuple):
            for collection in collections_name:
                self.collections[collection] = db[collection]
        else:
            self.collections[collections_name] = db[collections_name]

    def __check_settings(self, host, port, db, collection):
        if self.__check_var(host) and self.__check_var(port) and \
                self.__check_var(db) and self.__check_var(collection):
            return
        else:
            raise ValueError

    @classmethod
    def __check_var(cls, var):
        return False if var is None or '' else True

    def insert(self, collection, item):
        self.collections[collection].insert(item, check_keys=False)

如果设置了用户和密码,db.authenticate(user, password)登录即可,由于python的参数传递可不指定类型,故我们可以接受多种参数类型的collections_name,如果为list或者元祖tuple,我们可以定义一个字典self.collections = {}collections以键值对的形式保存起来,使用的时候只需要根据collection name将对应的链接取出来操作即可self.collections[collection].insert(item, check_keys=False),当然一般我们接受一个clooection_name

相关文章

  • python数据库操作MySQL-MongoDB-Redis之二

    python数据库操作MySQL-MongoDB-Redis之二 MongoDB 一 MongoDB 在...

  • MongoDB初使用

    1.mongodb安装 参考官方tutorials 2.mongodb管理 3.python操作mongodb 3...

  • Day 2

    熟悉Linxu,gi,vim操作 熟悉Python的语法 熟悉MongoDB的增删改查操作 用Python + g...

  • Mongodb

    mongodb学习 知识要点: mongodb基本结构 库,集合操作 数据(文档)的增 删 改 查 python操...

  • Python实战计划学习第二周

    在MongoDB中筛选房源 学习如何操作mongodb数据库 学习Python '三元操作符' 爬取手机号 设计断...

  • Python操作Mongodb

    一 导入 pymongo from pymongo import MongoClient 二 连接服务器 端口号 ...

  • Python操作MongoDB

    调用pymongo库 1.安装pymongo 2.在调用中需要使用的对象 1.MongoClient对象:用于与M...

  • Python——MongoDB操作

    pymogo shell连接mongodb的命令mongo 连接mongo 默认连接本地mongo 参数形式连接m...

  • python mongoDB操作

    如果设置了用户和密码,db.authenticate(user, password)登录即可,由于python的参...

  • Python操作MongoDB

    自学整理记录,大神见笑 MongoDB简介 MongoDB是非关系数据库,实际上就是一组json字符串 向Mong...

网友评论

      本文标题:python mongoDB操作

      本文链接:https://www.haomeiwen.com/subject/vrvvzttx.html