#防止鏈結重複做的乙個cache
defgen_mongo_connection(conn_name):
global
_mongo_conns
if conn_name in
_mongo_conns:
return
_mongo_conns[conn_name]
conn = mongoclient(**mongos[conn_name])
_mongo_conns[conn_name] =conn
return
_mongo_conns[conn_name]
class
mongodbmanager(object):
def__init__(self, name, db_name, is_read_preference=true):
self.client =gen_mongo_connection(name)
self.db_name =db_name
self.is_read_preference =is_read_preference
defget_read(self, tb_name):
ifself.is_read_preference:
return
self.client.get_database(
self.db_name,
read_preference=readpreference.secondary).get_collection(tb_name)
else
:
return
self.client.get_database(
self.db_name).get_collection(tb_name)
defget_write(self, tb_name):
return
self.client.get_database(
self.db_name).get_collection(tb_name)
class
mongodbintegration(mongodbmanager):
def__init__
(self):
super(mongodbintegration, self).
__init__('
ad_api_integration
', '
whw_test
', false)
### 基於模組匯入的單例模式
db_mongo_integration = mongodbintegration()
mongo_conf.py
test1.py
#-*- coding:utf-8 -*-
from pprint import
pprint
from mongo_conf import
db_mongo_integration
mongo_conn = db_mongo_integration.get_write("
mongo_test_table")
### insert操作
arg =}#
insert乙個 ~~ 多個的話使用 insert_many方法
mongo_conn.insert_one(arg)
### 更新操作
update_arg =
}mongo_conn.update(,update_arg)
### 刪除table中的資料
#mongo_conn.remove()
#刪除table
#mongo_conn.drop()
### 檢視
ret =mongo_conn.find()
print("
ret>>>
",ret)
for item in
ret:
pprint(item)
### 查詢這個table下的文件的數量
count =mongo_conn.count()
print("
count_total>>>
",count)
### 查詢這個table下 _id=2 的文件有幾個
count = mongo_conn.count()
print("
count_id=2>>>
",count)
### 查詢table下 id=2 的文件的具體資訊
find_ret = mongo_conn.find()
print("
find_ret>>>
",find_ret)
defmongodb:brew安裝mongodb報錯mongo設定自動過期時間insert_or_update_mongo(key:str,modify_dic:dict,mongo_conn):
#key 就是 id_
count_ = mongo_conn.count()
#insert
if count_ ==0:
modify_dic[
"_id
"] =key
mongo_conn.insert_one(modify_dic)
#update
if count_ >0:
mongo_conn.update(,modify_dic)
mongodb基本命令
mongodb的簡單操作
隨筆分類 - mongodb
爬蟲之mongodb
pymongo的使用總結
本地執行ez setup.py檔案,然後在環境變數path下加入可執行easy install的指令碼路徑.python安裝pymongo,easy install pymongo 我安裝的版本pymongo是3.0的,所以有些語法和網上找到的不太一樣,需要自己除錯 coding utf 8 imp...
pymongo的基本使用
pymongo可以直接使用pip來安裝pip install pymongo 基本使用也很簡單 import pymongo client pymongo.mongoclient mongodb user password address 27017 資料庫名稱 帶密碼登入 db client.資料...
mongo和pymongo簡單配置和使用
首先輸入mongd dbpath e data db執行mongod服務 然後輸入mongo執行mongo mongo操作 在mongo啟動時載入到指令碼,用於移除比較危險到shell輔助函式,比如禁止刪除資料庫 p25 noscripting 表示可選 db 顯示當前資料庫 show dbs 顯示...