Articles of mongodb

El agregado de Pymongo no devuelve un cursor sino un objeto

Estoy escribiendo un código usando pymongo que usa el marco de agregación para guardar algunos datos en otra colección. El código es este: from pymongo import MongoClient def makeAggregate(): print ‘Making aggregation of commits..’ commitsCollection = MongoClient(“mongo-srv”, 27017).gt.commits rankingCollection = MongoClient(“mongo-srv”, 27017).gt.commitsRanking pipe = [{‘$unwind’: ‘$commits’},{‘$group’:{“_id”:”$_id”, “picture”: {“$first”: “$picture”},’a’:{‘$sum’:’$commits.a’},’d’:{‘$sum’:’$commits.d’},’c’:{‘$sum’:’$commits.c’}}}] cursor = commitsCollection.aggregate(pipeline=pipe) obj = next(cursor, […]

¿Cómo escapar @ en una contraseña en conexión pymongo?

Mi pregunta es una especificación de cómo puedo validar la contraseña del nombre de usuario para la autenticación mongodb a través de pymongo. . Estoy tratando de conectarme a una instancia de MongoDB utilizando PyMongo 3.2.2 y una URL que contiene el usuario y la contraseña, como se explica en los documentos de MongoDB . […]

Actualización masiva en Pymongo usando múltiples ObjectId

Quiero actualizar miles de documentos en mongo collection. Quiero encontrarlos usando ObjectId y luego cualquier documento que coincida, debería actualizarse. Mi actualización es la misma para todos los documentos. Tengo lista de ObjectId. Para cada ObjectId en la lista, mongo debe encontrar el documento correspondiente y actualizar la clave “isBad” de ese documento a “N” […]

No se puede importar MongoClient

No puedo hacer esto: from pymongo import MongoClient Yo obtengo: >>> import pymongo >>> from pymongo import MongoClient Traceback (most recent call last): File “”, line 1, in ImportError: cannot import name MongoClient >>> Soy capaz de import pymongo sin problemas. Estoy ejecutando mongodb 2.2.3 y Python 2.7 . También he intentado esto: >>> connection […]

¿Por qué obtengo un pymongo.cursor.Cursor al intentar consultar mi db mongodb a través de pymongo?

He consumido un montón de tweets en una base de datos mongodb. Me gustaría consultar estos tweets utilizando pymongo. Por ejemplo, me gustaría consultar por nombre de pantalla. Sin embargo, cuando bash hacer esto, python no devuelve un tweet sino un mensaje sobre pymongo.cursor.Cursor. Aquí está mi código: import sys import pymongo from pymongo import […]

Error de pymongo: bson.errors.InvalidBSON: el codec ‘utf8’ no puede decodificar el byte 0xa1 en la posición 25: byte de inicio no válido

tasks = list(self.collection.find().sort(‘_id’,pymongo.DESCENDING).limit(1000)) Tuve un problema cuando uso pymongo para resolver un progtwig. Archivo “D: \ Python27 \ lib \ site-packages \ pymongo-3.2.1-py2.7-win-amd64.egg \ pymongo \ cursor.py”, línea 1097, en el siguiente archivo “D: \ Python27 \ lib \ site-packages \ pymongo-3.2.1-py2.7-win-amd64.egg \ pymongo \ cursor.py “, línea 1039, en el archivo _refresh” D: \ […]

¿Alguien sabe un ejemplo de trabajo del índice 2dsphere en pymongo?

Estoy tratando de codificar un script para hacer una operación básica de índice de 2dsphere mencionada aquí 2dsphere usando pymongo No pude encontrar ningún ejemplo para averiguarlo, este es mi bash hasta ahora: from pymongo import GEOSPHERE client=MongoClient(‘localhost’,27017) db=client[‘dbtest’] points=db[‘points’] points.create_index([(“loc”,GEOSPHERE)]) points.insert({“loc”:[2 5]}) points.insert({“loc”:[30,5]}) more points.insert for doc in points.find({“loc” : {“$near”: { “$geometry” : […]

¿Cómo puede Python observar los cambios en Oplog de Mongodb?

Tengo varios scripts de Python que escriben en Mongodb utilizando pyMongo. ¿Cómo puede otro script de Python observar los cambios en una consulta de Mongo y realizar alguna función cuando se produce el cambio? mongodb se configura con oplog habilitado.

Migración a MongoDB: cómo consultar GROUP BY + WHERE

Tengo una tabla MYSQL con registros de nombres de personas y la hora de llegada expresada como un número. Piense en ello como un maratón. Quiero saber cuántas personas llegaron a una cierta brecha de tiempo a las que dieron el mismo nombre, así que: SELECT name, COUNT(*) FROM mydb.mytable WHERE Time>=100 AND Time<=1000 GROUP […]

¿Cómo verificar en PyMongo si existe una colección y si existe vacía (eliminar todo de la colección)?

¿Cómo verificar en PyMongo si existe una colección y si existe vacía (eliminar todo de la colección)? Lo he intentado como collection.remove() o collection.remove({}) pero no elimina la colección. Como hacer eso ?