from urllib import parse import pymongo USER = parse.quote_plus('root') PASSWORD_TFSE = parse.quote_plus('sromitdTW569kC#M') PASSWORD_TYC = parse.quote_plus('gP@DwMSVd5Sh6EiH') PASSWORD_TFSE_021 = parse.quote_plus('UTlC9cCoglD1cI1*') client_tfse = pymongo.MongoClient('mongodb://{}:{}@{}:{}'.format(USER, PASSWORD_TFSE, '116.63.130.34', 27018)) client_tyc = pymongo.MongoClient('mongodb://{}:{}@{}:{}'.format(USER, PASSWORD_TYC, '116.63.130.34', 27019)) client_tfse_021 = pymongo.MongoClient('mongodb://{}:{}@{}:{}'.format(USER, PASSWORD_TFSE_021, '116.63.130.34', 27021)) def FIND_DATA_N_TYC(**kwargs): """ 查询天眼查数据库记录 Parameters: kwargs: 查询条件 Returns: data: 天眼查数据 """ collection = client_tyc[kwargs['db']][kwargs['col']] result = collection.find(kwargs['query'], {'_id': False}) data = list(result) return data def FIND_SINGLE_DATA_BY_REQ(param1, param2, param3, param4): """ 查询符合条件的第一条数据 Parameters: param1: str 数据库 param2: str 数据表 param3: dict 查询条件 param4: list 查询字段 Returns: record: 查询结果为空,返回False; 查询结果正常,返回查询结果的第一条数据; """ collection = client_tfse_021[param1][param2] columns = {**{'_id': False}, **dict(zip(param4, [1] * len(param4)))} record = list(collection.find(param3, columns)) return False if record == [] else record[0] def FIND_ALL_DATA_BY_REQ(param1, param2, param3, param4): """ 查询符合条件的所有数据 Parameters: param1: str 数据库 param2: str 数据表 param3: dict 查询条件 param4: list 查询字段 Returns: record: list 查询结果 """ collection = client_tfse_021[param1][param2] columns = {**{'_id': False}, **dict(zip(param4, [1] * len(param4)))} record = list(collection.find(param3, columns)) return record def UPSERT_SINGLE_DATA(param1, param2, param3, param4): """ 插入单条数据 Parameters: param1: str 数据库 param2: str 数据表 param3: dict 查询条件 param4: dict 更新或新插入的数据 """ collection = client_tfse_021[param1][param2] collection.update_one(param3, {"$set": param4}, upsert=True)