pymongo 基本用法 匯入匯出

2021-10-07 04:31:49 字數 2157 閱讀 3263

import numpy as np

import pandas as pd

import matplotlib.pyplot as plt

import os

import re

import warnings

import time

warnings.filterwarnings(

'ignore'

)'''

(1) pymong基本語法

'''import pymongo

myclient = pymongo.mongoclient(

'mongodb://localhost:27017/'

)# 連線mongo資料庫

myclient.list_database_names(

)#檢視資料庫

db = myclient[

'去哪兒網'

]#檢視具體的資料庫

db.list_collection_names(

)#檢視資料庫表名

table = db[

'table01'

]#檢視表內容 列表索引式寫法

table.find_one(

)#單行查詢

table.find(

)#**資料查詢 生成器

for i in table.find():

print

(i)#遍歷查詢表中的每行資料

tb2 = db[

'table02'

]#向資料庫插入 新錶

dic =

x = tb2.insert_one(dic)

#單條資料插入**

tb2.insert_many([,

])#多條資料插入 列表字典格式插入

x.inserted_id

#檢視插入資料的id

tb2.delete_one(

)#刪除單條資料

tb2.delete_many(

)#刪除多條條資料

'''(2) mongo資料庫,模擬資料匯入。我隨機的100萬

'''strattime = time.time(

)df = pd.dataframe(

)df[

'price_diff'

]= df[

'high_price'

]- df[

'low_price'

]lst = df.to_dict(orient=

'record'

)#pandas 資料格式轉換為列表字典格式

myclient = pymongo.mongoclient(

'mongodb://localhost:27017/'

)db = myclient[

'test'

]tb = db[

'equity_price'

]tb.insert_many(lst)

print

('匯入mongo資料庫耗時:%.2f'

%(time.time(

)- strattime)

)#匯入mongo資料庫耗時:27.92

'''(3) mongo資料庫的資料匯出

'''starttime = time.time(

)#起始時間

myclient = pymongo.mongoclient(

'mongodb://localhost:27017/'

)db = myclient[

'test'

]tb = db[

'equity_price'

]lst =

for i in tb.find():

df = pd.dataframe(lst)

del df[

'_id'

]print

('資料讀取耗時:%.2f ,資料條目數:%i'%(

(time.time(

)- starttime)

,len

(df)))

df.head(

)

可以看出資料匯出還是挺快的。

pymongo基本用法

import pymongo 準備工作 client pymongo.mongoclient host localhost port 27017 client pymongo.mongoclient mongodb localhost 27017 db client.mongo db client ...

PyMongo基本使用

引用pymongo import pymongo 建立連線connection import pymongo conn pymongo.connection localhost 27017 或import conn connection localhost 27017 建立connection時,指...

PyMongo基本使用

引用pymongo import pymongo 建立連線connection import pymongo conn pymongo.connection localhost 27017 或 from pymongo import connection conn connection localh...