0aec407ff5a94c56cec2db3962b1e799
Python-高级-使用MongoDB

版权声明:本文为博主原创文章,遵循CC BY-NC-ND 4.0 版权协议,转载请附上原文出处链接和本声明。

Python使用MongoDB

MongoDB相对于传统的关系型数据库,可以存储JSON数据,非常适合存储数据抓取返回的JSON数据。
今天主要学习的是使用Python连接MongoDB,并进行增删改查的操作。

MongoDB 的安装及使用,请参照官方文档。
https://api.mongodb.com/python/current/installation.html

在连接MongoDB前 首先要安装的是Python包:PyMongo,包的安装非常的简单。
只需执行 pip install pymongo 即可使用。

创建连接

在安装完PyMongo以后,使用Python连接MongoDB变得异常简单。具体方式为:

from pymongo import MongoClient

client = MongoClient('localhost', 27017)

或使用如下方式:

from pymongo import MongoClient

client = MongoClient('mongodb://localhost:27017')

如果连接含有账号密码等,请参考:
https://api.mongodb.com/python/current/api/pymongo/mongo_client.html

连接数据库

连接数据库的操作也非常的简单,最为重要的是,在你连接数据库之前无需先创建数据库,如果数据库存在则直接连接,如果数据库不存在则会创建新的库。具体方式为:

# 方式一
db = client.pymongo_test
# 方式二
db = client['pymongo_test']

以上两种方式任选一种即可。

Collection概念

在MongoDB中存在一个Collection的概念,我将其理解为命名空间,类似其他数据库中Scheme的概念,Collection可以理解为一些表的集合。Collection可以使用也可以不使用,具体看你是否要给库下的表分类。相关的操作:

#方法一:
collection = db.test_collection
#方法二
collection = db['test-collection']

需要知晓的是,collection的创建是在第一张表创建时才会创建。

插入数据

插入数据的方式的凡是非常的简单,最长使用的方法是,insert_one()inert_many()方法,从字面上就可以看出来一个是插入一条数据,另外一个是插入多条数据,示例:
```python
from pymongo import MongoClient

client = MongoClient('localhost', 27017)
db = client.testdb
posts = db.posts

post_1 = {
'title': 'Python and MongoDB',
'content': 'PyMongo is fun',

top Created with Sketch.