python連接mongodb操作代碼

jopen 9年前發布 | 8K 次閱讀 Python MongoDB

author = 'Administrator'

pip install pymongo

from bson.objectid import ObjectId import pymongo import time class pgo: def init(self, ip, port, db, tb): self.ip = ip self.port = port self.db = db self.tb = tb

def run(self):
    num = 0
    try:
        conn = pymongo.Connection(self.ip, self.port)
        #db = conn.kkk[self.database]
        #data = db.kkk
        print('88888')
        db = conn[self.db]
        data = db[self.tb].find()
        for i in data:
            num += 1
            print(i,num)
            print(i['_id'], i['name'], '\t', i['age'], '\t',  i['bm'], '\t', i['date'], '\t', i['mod_date'], '\t', num)
        print('姓名', '\t', '年齡', '\t', '部門', '\t', '注冊日期', '\t\t\t\t\t\t', '修改日期', '\t\t\t\t\t\t', '統計')
        conn.close()
        return data
    except Exception as e:
        conn.close()
        print('Fail:', '\t', e)

def add(self, name, age, bm):
    try:
        conn = pymongo.Connection(self.ip, self.port)
        db = conn[self.db]
        data = db[self.tb]
        #data.insert({'name':'kkk', 'age':22, 'bm':'op'})
        data.insert({'name':name,'age':age,'bm':bm,'date':(time.strftime('%Y-%m-%d %H:%M'))})
        conn.close()
        print('OK')
    except:
        conn.close()
        print('Fail!')

def remove(self, xarg):
    try:
        conn = pymongo.Connection(self.ip, self.port)
        db = conn[self.db]
        data = db[self.tb]
        #id  ='ObjectId("%s")'%xarg
        id = '%s'%xarg
        data.remove({"_id": ObjectId(id)})
        #data.remove(xarg)
        conn.close()
        print('OK')
    except:
        conn.close()
        print('Fail!')

def update(self, *xarg):
    try:
        conn = pymongo.Connection(self.ip, self.port)
        db = conn[self.db]
        data = db[self.tb]
        #data.update({"name":{'$eq':'kkk'}}, {'$set':{'age':10}}, upsert=False, multi=True)
        data.update(*xarg,upser=False, multi=True)
        conn.close()
        print('OK')
    except:
        conn.close()
        print('Fail!')



if name == 'main':

#a = "549be654b69e727c1396c8f8"
#pgo('127.0.0.1', 27017, 'kkk', 'kkk').remove(a)
#pgo('127.0.0.1', 27017, 'kkk', 'kkk').add('kkk', 99, 'OP')
pgo('127.0.0.1', 27017, 'kkk', 'kkk').update({'name':'user_18'}, {'$set':{'date':(time.strftime('%Y-%m-%d %H:%M')), 'mod_date':(time.strftime('%Y-%m-%d %H:%M'))}})</pre> 


2-
author = 'Administrator'

pip install pymongo

from bson.objectid import ObjectId

import pymongo import time

class pgo: def init(self, ip, port, db, tb): self.ip = ip self.port = port self.db = db self.tb = tb

def run(self):
    try:
        conn = pymongo.Connection(self.ip, self.port)
        db = conn[self.db]
        data = db[self.tb].find({}).limit(1500)
        conn.close()
        return data
    except Exception as e:
        conn.close()

def find(self,xarg):
    try:
        conn = pymongo.Connection(self.ip, self.port)
        db = conn[self.db]
        data = db[self.tb].find_one(xarg)
        conn.close()
        return data
    except Exception as e:
        conn.close()

def add(self, xarg):
    try:
        conn = pymongo.Connection(self.ip, self.port)
        db = conn[self.db]
        data = db[self.tb]
        data.insert(xarg)
        conn.close()
    except:
        conn.close()

def remove(self, xarg):
    try:
        conn = pymongo.Connection(self.ip, self.port)
        db = conn[self.db]
        data = db[self.tb]
        data.remove(xarg)
        conn.close()
    except:
        conn.close()

def insert(self, xarg):
    try:
        conn = pymongo.Connection(self.ip, self.port)
        db = conn[self.db]
        data = db[self.tb]
        data.insert(xarg)
        conn.close()
    except:
        conn.close()

def save(self, xarg):
    try:
        conn = pymongo.Connection(self.ip, self.port)
        db = conn[self.db]
        data = db[self.tb]
        data.save(xarg)
        conn.close()
    except:
        conn.close()

def update(self, *xarg):
    try:
        conn = pymongo.Connection(self.ip, self.port)
        db = conn[self.db]
        data = db[self.tb]
        #data.update({"name":{'$eq':'kkk'}}, {'$set':{'age':10}}, upsert=False, multi=True)
        data.update(*xarg, upser=False, multi=True)
        conn.close()
    except:
        conn.close()



if name == 'main':

#pgo('127.0.0.1', 27017, 'kkk', 'kkk').remove({'name':'kkk', 'age':{"$gte":32}})
#pgo('127.0.0.1', 27017, 'kkk', 'kkk').add('kkk', 99, 'OP')
#pgo('127.0.0.1', 27017, 'kkk', 'kkk').update({}, {'$set':{'date': (time.strftime("%Y-%m-%d_%H:%M")), 'mod_date': (time.strftime("%Y-%m-%d_%H:%M"))}})
pgo('127.0.0.1', 27017, 'kkk', 'kkk').run()</pre> 


 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!