2013-04-30 89 views
0

我正试图把通过mongodb解析并获得每个页面的程序(最终我想绘制它),但我不知道我在这里做错了什么。我已经通过教程http://api.mongodb.org/python/2.0/tutorial.html 但它不知道如何动态查询(循环)。我的猜测是它与unicode返回的结果有关,但我不确定。这是我的代码。解析Pymongo

import pymonogo 
from pymongo import Connection 
c = Connection() 
dbs = c.database_names() 
for db in dbs: 
    print db 
    for col in c[db].collection_names(): 
    print '\t', col 
    for pag in c[db].col.find(): 
     print pag 

我只是对现有的数据库做一些分析。 (我有大概5个数据库,每个数据库有1-20个集合,每个集合的范围是0 - 1500页。我希望绘制页面图,但是我还没有深入到图形库中,还没有看到具体如何锻炼身体。

如果你能帮助表示感谢。

+0

这不是完全清楚什么是你想实现在哪些数据库和收集做你的网页你的生活? – alecxe 2013-04-30 17:03:07

+0

我编辑了更多的细节,希望这是足够清楚,如果不让我知道 – 2013-04-30 17:10:51

回答

2

如果你只是想获得的所有所有DBS和所有集合的数据,那么你的代码几乎是正确的。这里有一个小的修复代码(c[db][col]而不是c[db].col):

from pymongo import MongoClient 

c = MongoClient() 
dbs = c.database_names() 
for db in dbs: 
    print db 
    for col in c[db].collection_names(): 
     print '\t', col 
     for pag in c[db][col].find(): 
      print pag 
+0

完美,这正是我需要的。谢谢,这些页面是否以字典形式返回? – 2013-04-30 17:15:07

+0

好的答案,我将更新它作为Connection()已被MongoDB弃用。 – KLDavenport 2014-01-25 05:24:34