sql >> データベース >  >> NoSQL >> MongoDB

pymongo接続のパスワードで@をエスケープする方法は?

    urllib.quote()を使用してパスワードをエスケープできるはずです。 。ただし、パスワードを引用符で囲むかエスケープするだけで、username:を除外する必要があります。;それ以外の場合、: %3Aにもエスケープされます 。

    例:

    import pymongo 
    import urllib 
    
    mongo_uri = "mongodb://username:" + urllib.quote("[email protected]") + "@127.0.0.1:27001/"
    client = pymongo.MongoClient(mongo_uri)
    

    上記のスニペットは、MongoDB v3.2.x、Python v2.7、およびPyMongov3.2.2でテストされています。

    上記の例は、MongoDB URI接続文字列で想定されています:

    • ユーザーはadminで作成されます データベース。
    • ホストのmongod 実行中は127.0.0.1(localhost)
    • ポートmongod 割り当てられているのは27001

    Python 3.xの場合、urllib.parse.quote()を利用して、%xxを使用してパスワードの特殊文字を置き換えることができます。 逃れる。例:

    url.parse.quote("[email protected]")
    


    1. MongoDB集約フレームワークで中央値を計算します

    2. サブドキュメントの配列にあるフィールドのインデックス作成

    3. 基本的なMongoDBコマンドとは何ですか?それらの使用方法は?

    4. Redisを使用したデータ移行