Python RPA 数据库篇 4 - MongoDB 篇 3 - 操作 MongoDB 数据库

Python RPA 数据库篇 4 - MongoDB 篇 3 - 操作 MongoDB 数据库

pymongo 深入操作

连接数据库、查询数据库、增加数据库
增加集合、查询集合
增加数据、查询数据、判断数据

连接数据库、查询数据库、增加数据库

#!/usr/bin/env Python3
# -*- coding: utf-8 -*-
# @Software: PyCharm
# @virtualenv:study
# @contact: contact information
# @Desc:python 操作 mangodb 数据库
__author__ = '未昔/AngelFate'
__date__ = '2019/8/27 20:15'

import pymongo

ip = 'localhost'
port = 2017
self.myclient = pymongo.MongoClient(ip,port)

增加集合、查询集合

mydb = self.myclient.runoobdb  #连接mydb数据库,没有则自动创建

        dblist = self.myclient.list_database_names()  # 读取 MongoDB 中的所有数据库

        if "runoobdb" in dblist: 
            print("数据库已存在!")
            print('打印所有数据库:',dblist)
        else:
            print("runoobdb 数据库已存在!")
      
        my_set = mydb.sites 
        # my_set = mydb["sites"]
        return mydb,my_set

增加数据、查询数据、判断数据

mydb,my_set = self.use_mongodb()

    collist = mydb.list_collection_names() 
    if "sites" in collist: 
        print("集合已存在!")
        print('打印所有集合:',collist)
    else:
        print("sites集合不存在!")

    if not my_set.find_one({"name":"yangling"}):
        mydict = {"name": "yangling", "age": 19}
        mylist = []
        mylist.append(mydict)
        my_set.insert_many(mylist)
    else:
        print('此数据已存在')

    print('-----打印集合所有数据------:')
    for i in my_set.find():
        print(i)

    print('-----查询name=wangwei的数据------:')
    for i in my_set.find({"name": "wangwei"}):
        print(i)
## 結果
```py
D:\import\python3.7\python.exe E:/python/Study/数据库篇/MongoDB数据库/chass类操作.py
数据库已存在!
打印所有数据库: ['admin', 'local', 'runoobdb']
集合已存在!
打印所有集合: ['sites.sites', 'sites']
此数据已存在
-----打印集合所有数据------:
{'_id': ObjectId('5d65e2bb5b28a2d4bc75da44'), 'name': 'wangwei', 'age': 18}
{'_id': ObjectId('5d65e3a9f250dcab8e226876'), 'name': 'wangwei', 'age': 18}
{'_id': ObjectId('5d65e87149bde3db19bc5ac4'), 'name': 'wangwei', 'age': 19}
{'_id': ObjectId('5d65e8932034d2c79f82e91d'), 'name': 'wangwei', 'age': 19}
{'_id': ObjectId('5d65e8a5f12eb3cd7d34706a'), 'name': 'wangwei', 'age': 19}
{'_id': ObjectId('5d65e8c033e158f2b34ee6af'), 'name': 'wangwei', 'age': 19}
{'_id': ObjectId('5d65e8d2c4daef8833f34e2b'), 'name': 'wangwei', 'age': 19}
{'_id': ObjectId('5d65e8e5d79cae433374dec3'), 'name': 'wangwei', 'age': 19}
{'_id': ObjectId('5d65ea00e6466f5a2354982e'), 'name': 'yangling', 'age': 19}
{'_id': ObjectId('5d65ebdc3c01f2df59bae676'), 'name': 'wangwei', 'age': 3}
-----查询name=wangwei的数据------:
{'_id': ObjectId('5d65e2bb5b28a2d4bc75da44'), 'name': 'wangwei', 'age': 18}
{'_id': ObjectId('5d65e3a9f250dcab8e226876'), 'name': 'wangwei', 'age': 18}
{'_id': ObjectId('5d65e87149bde3db19bc5ac4'), 'name': 'wangwei', 'age': 19}
{'_id': ObjectId('5d65e8932034d2c79f82e91d'), 'name': 'wangwei', 'age': 19}
{'_id': ObjectId('5d65e8a5f12eb3cd7d34706a'), 'name': 'wangwei', 'age': 19}
{'_id': ObjectId('5d65e8c033e158f2b34ee6af'), 'name': 'wangwei', 'age': 19}
{'_id': ObjectId('5d65e8d2c4daef8833f34e2b'), 'name': 'wangwei', 'age': 19}
{'_id': ObjectId('5d65e8e5d79cae433374dec3'), 'name': 'wangwei', 'age': 19}
{'_id': ObjectId('5d65ebdc3c01f2df59bae676'), 'name': 'wangwei', 'age': 3}

Process finished with exit code 0