Saltar al contenido

¿Leer el archivo BSON en Python?

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)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *