Python操作MongoDB---连接
连接MongoDB
Python连接Mongodb,首先需要导入python对应MongoDB api的包。
常见的python-mongo包有pymongo、Motor等,这里我们先介绍pymong。
导入:
from pymongo import MongoClient
无账号密码、无权限验证
通过MongoClient连接数据库
client = MongoClient('localhost', 27017) # 指定host port
# 或
client = MongoClient('mongodb://localhost:27017/') # url的形式
有账号密码连接
1. url方式连接
url的方式连接,需要将用户名密码进行url编码,这里我们使用urllib.parse编码
from pymongo import MongoClient
import urllib.parse
username = urllib.parse.quote_plus('user') # 对用户名进行编码
password = urllib.parse.quote_plus('pass/word') # 对密码进行编码
client = MongoClient('mongodb://%s:%s@127.0.0.1' % (username, password)) # 组装成url进行连接
2.指定加密方式连接
账号密码连接mongo的时候,通常会将账号密码进行加密,加密方式有SCRAM-SHA-256、SCRAM-SHA-1、MONGODB-CR的方式。
连接代码如下:
from pymongo import MongoClient
client = MongoClient(
"localhost", # host
username="test", # 用户名
password="test", # 密码
authSource="test", # 数据库名
authMechanism="SCRAM-SHA-256" # 加密方式
)
好了,以上就是常见的python连接mongoDB的方法,后面还会有python-mongo CRUD,聚合操作,mapreduce等等,还会有异步操作mongoDB的Motor。