python连接Mongo问题:pymongo.errors.InvalidURI: Username and password must be escaped according to RFC...

出现的问题

使用用户名密码连接MongoDB的时候,报错:pymongo.errors.InvalidURI: Username and password must be escaped according to RFC 3986, use urllib.parse.quote_plus().

出现问题的原因

网上查的原因是:如果连接MongoDB的时候设置用户名和密码,则必须根据RFC 3986转义用户名和密码,使用urllib.parse.quote_plus()。

解决方法

import pymongo
from urllib import parse

# 转义用户名和密码
user = parse.quote_plus("username")
passwd = parse.quote_plus("password")

# 连接MongoDB
myclient = pymongo.MongoClient("mongodb://{0}:{1}@url:port/mapdb".format(user,passwd))

你可能感兴趣的:(python连接Mongo问题:pymongo.errors.InvalidURI: Username and password must be escaped according to RFC...)