tfse-etl-api-v0.2/RatingData/db.py

71 lines
2.3 KiB
Python
Raw Normal View History

2021-12-09 17:11:29 +08:00
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*')
2021-12-09 17:11:29 +08:00
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))
2021-12-09 17:11:29 +08:00
2022-03-24 16:10:45 +08:00
def FIND_DATA_N_TYC(**kwargs):
2021-12-09 17:11:29 +08:00
"""
2021-12-23 17:18:31 +08:00
查询天眼查数据库记录
2021-12-09 17:11:29 +08:00
Parameters:
kwargs: 查询条件
Returns:
data: 天眼查数据
"""
collection = client_tyc[kwargs['db']][kwargs['col']]
result = collection.find(kwargs['query'], {'_id': False})
data = list(result)
return data
2022-03-24 16:10:45 +08:00
def FIND_SINGLE_DATA_BY_REQ(param1, param2, param3, param4):
2021-12-13 17:00:23 +08:00
"""
2022-03-24 16:10:45 +08:00
查询符合条件的第一条数据
2021-12-13 17:00:23 +08:00
Parameters:
2022-03-24 16:10:45 +08:00
param1: str 数据库
param2: str 数据表
param3: dict 查询条件
param4: list 查询字段
2021-12-13 17:00:23 +08:00
Returns:
2022-03-24 16:10:45 +08:00
record: 查询结果为空返回False; 查询结果正常返回查询结果的第一条数据;
2021-12-13 17:00:23 +08:00
"""
2022-03-24 16:10:45 +08:00
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]
2021-12-13 17:00:23 +08:00
2022-03-24 16:10:45 +08:00
def FIND_ALL_DATA_BY_REQ(param1, param2, param3, param4):
2021-12-09 17:11:29 +08:00
"""
2022-03-24 16:10:45 +08:00
查询符合条件的所有数据
2021-12-09 17:11:29 +08:00
Parameters:
2022-03-24 16:10:45 +08:00
param1: str 数据库
param2: str 数据表
param3: dict 查询条件
param4: list 查询字段
2021-12-09 17:11:29 +08:00
Returns:
2022-03-24 16:10:45 +08:00
record: list 查询结果
2021-12-09 17:11:29 +08:00
"""
2022-03-24 16:10:45 +08:00
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)