close

本文利用 Python 程式語言來取得本機端(local) Mongo DB內存放的資料庫資訊。

1. 要在利用 Python 程式語言存取本機端(local) Mongo DB,首先要在 Python 虛擬環境下安裝 pymongo 程式庫/套件
> pip install pymongo 

2. 建立一個 Python 程式原始檔案:.py 檔案

3. 加入參考
from pymongo import MongoClient

4. 先利用 MongoClient() 函式 

00_local_mongodb_shell.png

這裡看到 ip 是 127.0.0.1,可改換為 "localhost" 字串
ip port是 27017


client = MongoClient("localhost", 27017, maxPoolSize=50)

MongoClient 的第一個參數就用“localhost”,第二個參數是 27017。至於第三個maxPoolSize 是 Mongo db server 最多的連接數目,這裡設 50 即可。

5. 取得資料庫

Mongo shell 裡可以用 show dbs 來觀察目前MongoDB 裡的資料庫名稱 

01_dbMongoDB.png

我們存放的資料在 demo 資料庫,因此用
db = client['demo']

6. 取得 collection

Mongo shell 裡可以用 db.getCollectNames()來觀察目前MongoDB 裡的使用資料庫裡collection(table)名稱 

02_db_getCollectionNames.png

目前使用的 Collection(table) 是 employee。
取得 collection 可以用
collection = db['employee']

7. 取出 collection 資料
 取出 collection 後,我們可以用 
db.collectionName.find() 取出資料。
但後面我們希望以 pandas dataframe 來顯示collection (table) 資料
這裡我們先做轉換
import pandas as pd
data = pd.DataFrame(list(collection.find()))


經過這兩層轉換,collection 資料就可轉換成 pandas dataframe 格式的資料,我們也可以利用 dataframe 裡的函式來存取資料。

8. 顯示資料

 dataframe 裡面 可用 .info() 來顯示dataframe 的統計資料
print(data.info())
03_df_info.png

 也可以用 dataframe.loc[] 來顯示每一筆資料

print(data.loc[0])
04_df_0.png

arrow
arrow
    創作者介紹
    創作者 小木屋 的頭像
    小木屋

    小木屋

    小木屋 發表在 痞客邦 留言(0) 人氣()