您应该可以使用来转义密码
urllib.quote()。虽然您只应引用/转义密码,但不包括
username:; 否则
:遗嘱也将被逃脱
%3A。
例如:
import pymongo import urllibmongo_uri = "mongodb://username:" + urllib.quote("p@ssword") + "@127.0.0.1:27001/"client = pymongo.MongoClient(mongo_uri)
上面的代码段已针对MongoDB v3.2.x,Python
v2.7和PyMongo v3.2.2进行了测试。
上面的示例在MongoDB
URI连接字符串中假设:
- 在
admin
数据库中创建用户。 mongod
运行的主机是127.0.0.1(localhost)mongod
分配给的端口是27001
对于Python
3.x,可以使用urllib.parse.quote()来使用
%xx转义符替换密码中的特殊字符。例如:
url.parse.quote("p@ssword")
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)