bson – BSON (Binary JSON) Encoding and Decoding

BSON (Binary JSON) encoding and decoding.

class bson.BSON

BSON (Binary JSON) data.

decode(as_class=<type 'dict'>, tz_aware=False)

Decode this BSON data.

The default type to use for the resultant document is dict. Any other class that supports __setitem__() can be used instead by passing it as the as_class parameter.

If tz_aware is True (recommended), any datetime instances returned will be timezone-aware, with their timezone set to bson.tz_util.utc. Otherwise (default), all datetime instances will be naive (but contain UTC).

Parameters :
  • as_class (optional): the class to use for the resulting document
  • tz_aware (optional): if True, return timezone-aware datetime instances

New in version 1.9.

classmethod encode(document, check_keys=False)

Encode a document to a new BSON instance.

A document can be any mapping type (like dict).

Raises TypeError if document is not a mapping type, or contains keys that are not instances of basestring. Raises InvalidDocument if document cannot be converted to BSON.

Parameters :
  • document: mapping type representing a document
  • check_keys (optional): check if keys start with ‘$’ or contain ‘.’, raising InvalidDocument in either case

New in version 1.9.

classmethod from_dict(dct, check_keys=False)

DEPRECATED - from_dict has been renamed to encode.

Changed in version 1.9: Deprecated in favor of encode()

to_dict(as_class=<type 'dict'>, tz_aware=False)

DEPRECATED - to_dict has been renamed to decode.

Changed in version 1.9: Deprecated in favor of decode()

New in version 1.8: The tz_aware parameter.

New in version 1.7: The as_class parameter.

bson.decode_all(data, as_class=<type 'dict'>, tz_aware=True)

Decode BSON data to multiple documents.

data must be a string of concatenated, valid, BSON-encoded documents.

Parameters :
  • data: BSON data
  • as_class (optional): the class to use for the resulting documents
  • tz_aware (optional): if True, return timezone-aware datetime instances

New in version 1.9.

bson.has_c()

Is the C extension installed?

New in version 1.9.

bson.is_valid(bson)

Check that the given string represents valid BSON data.

Raises TypeError if bson is not an instance of str. Returns True if bson is valid BSON, False otherwise.

Parameters :
  • bson: the data to be validated

Sub-modules:

Previous topic

API Documentation

Next topic

binary – Tools for representing binary data to be stored in MongoDB

This Page