J'ai trouvé que cela fonctionnait pour moi avec un fichier mongodb 2.4 BSON et PyMongo module 'bson' :
import bson
with open('survey.bson','rb') as f:
data = bson.decode_all(f.read())
Cela a renvoyé une liste de dictionnaires correspondant aux documents JSON stockés dans cette collection mongo.
Les données f.read() ressemblent à ceci dans un BSON :
>>> rawdata[:100]
'\x04\x01\x00\x00\x12_id\x00\x01\x00\x00\x00\x00\x00\x00\x00\x02_type\x00\x07\x00\x00\x00simple\x00\tchanged\x00\xd0\xbb\xb2\x9eI\x01\x00\x00\tcreated\x00\xd0L\xdcfI\x01\x00\x00\x02description\x00\x14\x00\x00\x00testing the bu'