robin2015
11/13/2019 - 9:47 AM

MongodbOpt 数据库操作

# coding = utf-8

# k线相关的数据库
import pymongo


class MongodbOpt:
    """MongoDb 业务 数据库 操作"""

    def __init__(self):
        self.conn = 'dds-uf6babe0d48624e4118410.mongodb.rds.aliyuncs.com:3717'

    def get_db(self):
        username = 'root'
        password = '****'
        client = pymongo.MongoClient([self.conn])  # , serverSelectionTimeoutMS=10 """有bug""", connect=False
        client.admin.authenticate(username, password)
        db = client["tdxdb"]
        return db

    def get_col(self, col_name):
        return self.get_db()[col_name]

    def get_bk_cgf_col(self):
        """板块成分股"""
        return self.get_col('bk_cgf')

    def get_m1_price_col(self):
        """计算1分钟涨幅的数据表"""
        return self.get_col('m1_price')

    def get_m5_price_col(self):
        """计算5分钟涨幅的数据表"""
        return self.get_col('m5_price')

#
# class MdbWenCaiGaiNianOpt(MdbOpt):
#
#     def get_real_col(self):
#         return self.get_col('WenCaiGaiNian')
#
#     def find_items(self, where):
#         return self.get_real_col().find(where)
#
#
# class MdbWCTingPaiOpt(MdbOpt):
#
#     def get_real_col(self):
#         return self.get_col('TingPaiStock')
#
#     def find_items(self, where):
#         return self.get_real_col().find(where)
#
#     def remove_items(self, where):
#         return self.get_real_col().delete_many(where)
#
#     def insert_items(self, items):
#         self.get_real_col().insert_many(items)
#
#
# class MdbWCRongZiRongQuanOpt(MdbOpt):
#
#     def get_real_col(self):
#         return self.get_col('RongZiRongQuan')
#
#     def find_items(self, where):
#         return self.get_real_col().find(where)
#
#     def remove_items(self, where):
#         return self.get_real_col().delete_many(where)
#
#     def insert_items(self, items):
#         self.get_real_col().insert_many(items)