2017-01-06 1 views
1

Dies ist, wie ein typisches Dokument in meiner Sammlung strukturiert:anfragende mongodb in Python

{u'_id': ObjectId('58645996fa36ac0b9f0e738d'), 
u'alias': u'loco_ono', 
u'artist': u'ONO’, 
u'date_time': datetime.datetime(2016, 12, 29, 0, 32, 22, 723000), 
u'followers': [{u'permalink': u'pschedelicsuperfuzz', 
    u'plan': u'Free'}, 
    {u'permalink': u'd-miller', 
    u'plan': u'Free'}], 
u'followers_count': 60, 
u'last_modified': u'2016/10/17 18:53:09 +0000', 
u'plan': u'Pro'} 

Wie kann ich durch jedes Dokument in meiner Sammlung durchlaufen und für jede Iteration in eine CSV-Datei die folgenden Informationen schreiben pymongo mit ?

Artist | Follower    | Count 
loco_ono | pschedelicsuperfuzz | 1 
loco_ono | d-miller    | 1 

Bisher habe ich dies:

import pymongo 
from pymongo import MongoClient 

mongo_client = MongoClient() 
db = mongo_client.soundcloud_db 
artist_followers = db.artist_followers 

Ich bin nicht sicher, wie durch die artist_followers Sammlung iterieren richtig und nur die gerade ‚permalink‘ Feldwerte aus dem Array ‚Anhänger‘ für jeden Künstler zur Ausgabe im oben beschriebenen Format.

+0

Was Sie versucht, 'für Artikel in artist_followers: print Artikel 'noch? –

Antwort

1

Ich denke, Sie möchten über collection.find() iterieren, um die Dokumente aus den Sammlungen abzurufen, verwenden Sie dann eine innere Schleife, um über die Anhänger zu iterieren.

Ich verstehe nicht, Ihre Zählfeld und die genaue Formatierung wird ein bisschen Fummelei nehmen, aber hier ist ein Fragment, das Sie sollte helfen:

for doc in artist_followers.find(): 
    for follower in doc["followers"]: 
     print(doc["alias"], follower["permalink"]) 
Verwandte Themen