Connessione a MongoDB con Python

Mattepuffo's logo
Connessione a MongoDB con Python

Connessione a MongoDB con Python

Oggi vediamo come connetterci a MongoDB in Python con il modulo pymongo.

Avendo creato un programmino personale, vederemo un esempio più completo rispetto a quelli fatti con altri linguaggi.

Cominciamo con l'installare la libreria:

(venv) $ pip3 install pymongo

Come potete vedere stiamo usando un ambiente virtuale.

Adesso andremo a riempire un db con il nomi dei files presi da una directory.

Inoltre per ogni file usiamo mediainfo per recuperare informazioni sul video; ovviamente potete omettere questa parte.

import os, datetime
from pymongo import MongoClient

now = datetime.datetime.now()
client = MongoClient('localhost', 27017)
db = client.db_films
coll = db.films
coll.drop()

path = "/mnt/DATA/Film"
for count, filename in enumerate(sorted(os.listdir(path)), start=1):
    f = "Adaline - L'eterna giovinezza.avi"
    cmd = "mediainfo /mnt/DATA/Film/" + '"' + filename.replace("'", "'") + '"'
    stream = os.popen(cmd)
    output = stream.read()

    doc = {'titolo': filename, 'info:': output, 'ultima_exec': now}
    result = coll.insert_one(doc)

for doc in coll.find():
    print(doc)

Nelle ultime leggiamo tutti i records; considerando che questa operazione nel mio programma deve essere fatta una volta al giorno, prima svuoto tutto cancellando la collezione; così evito duplicati.

Fate le modifiche per quello che effettivamente vi serve.

Enjoy!


Condividi

Commentami!