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

pymongoエラー:bson.errors.InvalidBSON:'utf8'コーデックは位置25のバイト0xa1をデコードできません:無効な開始バイト

    unicode_decode_error_handler引数をMongoClientに渡し、少なくともpymongo3.5.1を使用する必要があります。

    import pymongo
    import json
    from pymongo import MongoClient
    
    if __name__ == '__main__':
    
        client = MongoClient(
            host="whatever_your_host_is",
            maxPoolSize=50,
            unicode_decode_error_handler='ignore'
        )
    
    
        my_db=client['my_db']
        collection=my_db['my_collection']
    
        cursor = collection.find({"whatever": "some_stuff"})
    
        for document in cursor:
              print(document)
    

    Python 2.7ではデフォルトで「ignore」が設定されているように見えますが、Python3.6.1では自分で行う必要があります。これにより、Unicodeエラーが無視され、カーソルの反復が続行されます。pymongoは、JSONデータを再構築するために最善を尽くします。



    1. XAMPPでMongoDBドライバーを設定する方法

    2. MongoDBセキュリティの3つのA–認証、承認、監査

    3. Meteorメソッドと拒否/許可ルール

    4. JSON日付の説明