Como posso usar o Python para transformar o bsondump do MongoDB em JSON?

Então eu tenho uma enorme quantidade de .bson de um despejo do MongoDB. estou usandobsondump na linha de comando, canalizando a saída como stdin para python. Isso converte com sucesso de BSON para 'JSON', mas na verdade é uma string, e aparentemente não é legal JSON.

Por exemplo, uma linha de entrada se parece com isso:

{ "_id" : ObjectId( "4d9b642b832a4c4fb2000000" ),
  "acted_at" : Date( 1302014955933 ),
  "created_at" : Date( 1302014955933 ),
  "updated_at" : Date( 1302014955933 ),
  "_platform_id" : 3,
  "guid" : 72106535190265857 }

O que eu acredito éJSON estendido do Mongo.

Quando eu leio em tal linha e faço:

json_line = json.dumps(line)

Eu recebo:

"{ \"_id\" : ObjectId( \"4d9b642b832a4c4fb2000000\" ),
\"acted_at\" : Date( 1302014955933 ),
\"created_at\" : Date( 1302014955933 ),
\"updated_at\" : Date( 1302014955933 ),
\"_platform_id\" : 3,
\"guid\" : 72106535190265857 }\n"

Que ainda é<type 'str'>.

Eu também tentei

json_line = json.dumps(line, default=json_util.default)

(veja pymongo json_util - detecção de spam impede um terceiro link) Que parece ter o mesmo resultado que os dumps acima. load dá um erro:

json_line = json.loads(line, object_hook=json_util.object_hook)
ValueError: No JSON object could be decoded

Então, como posso transformar a string do TenGen JSON em JSON parseable? (o objetivo final é transmitir os dados separados por tabulação para outro banco de dados)

questionAnswers(3)

yourAnswerToTheQuestion