Solución:
Encontré que esto funcionó para mí con un archivo mongodb 2.4 BSON y PyMongomódulo ‘s’ bson ‘:
import bson
with open('survey.bson','rb') as f:
data = bson.decode_all(f.read())
Eso devolvió una lista de diccionarios que coinciden con los documentos JSON almacenados en esa colección de mongo.
Los datos de f.read () se ven así en un BSON:
>>> rawdata[:100]
'x04x01x00x00x12_idx00x01x00x00x00x00x00x00x00x02_typex00x07x00x00x00simplex00tchangedx00xd0xbbxb2x9eIx01x00x00tcreatedx00xd0LxdcfIx01x00x00x02descriptionx00x14x00x00x00testing the bu'
La documentación dice:
> help(bson.loads)
Given a BSON string, outputs a dict.
Necesitas pasar una cuerda. Por ejemplo:
> b = bson.loads(bson_file.read())
loads
espera una cadena (eso es lo que significa la ‘s’), no un archivo. Intente leer del archivo y pasar el resultado a loads
.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)