update 添加保存股东相关数据

This commit is contained in:
彭森 2021-12-17 16:47:38 +08:00
parent 2cc035bf14
commit 6a632da9ce
2 changed files with 81 additions and 2 deletions

29
db.py
View File

@ -23,3 +23,32 @@ def conserve_data(db, name, key, value):
# 数据库操作
my_col = client[db][key]
my_col.update_one({"企业名称": name}, {"$set": insert_data}, upsert=True)
def conserve_data_by_hold(db, h_id, h_name, key, value):
"""
保存天眼查api接口数据
传入数据库名称企业名称集合名称需要保存的数据
"""
insert_data = dict()
insert_data['人员ID'] = h_id
insert_data['姓名'] = h_name
insert_data['录入时间'] = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
insert_data[key] = value
# 数据库操作
my_col = client[db][key]
my_col.update_one({"人员ID": h_id}, {"$set": insert_data}, upsert=True)
def find_db_data(**kwargs):
"""
查询数据库记录
Parameters:
kwargs: 查询条件
Returns:
data: tfse数据
"""
collection = client[kwargs['db']][kwargs['col']]
result = collection.find(kwargs['query'], {'_id': False})
data = list(result)
return data

54
tyc.py
View File

@ -5,7 +5,7 @@ import json
import requests
from common import judege_api_code, general_request
from db import conserve_data
from db import conserve_data, find_db_data, conserve_data_by_hold
from setting import DB_SFFX, DB_JYFX, DB_TYFX, DB_GSBJ, DB_JYZK, DB_ZSCQ, DB_GSFZ
token = "32737167-cb63-4ce9-9397-d66169488f51"
@ -268,6 +268,51 @@ def financing_history(name):
return res
# 人员控股企业
def holding_enterprise(h_id, h_name):
url = 'http://open.api.tianyancha.com/services/open/human/companyholding/2.0?hid={}&pageSize=20&pageNum=1&'
url = url.format(h_id)
# 根据传入url进行请求
res = json.loads(requests.get(url, headers=headers).text)
# 判断请求返回结果中的error_code
code = res['error_code']
status = judege_api_code(code)
# status为请求成功则保存result数据
if status == '请求成功':
insert = dict()
insert['result'] = res['result']['items']
insert['total'] = res['result']['total']
conserve_data_by_hold(DB_GSBJ, h_id, h_name, '人员控股企业', insert)
return '保存成功'
elif status == '无数据':
insert = dict()
conserve_data_by_hold(DB_GSBJ, h_id, h_name, '人员控股企业', insert)
return '保存成功'
else:
return status
# 保存股东数据
def shareholder_information(name):
# 判断企业大股东类型
result = find_db_data(db='公司背景', col='企业股东', query={'企业名称': name})
if len(result) > 0:
if result[0]['企业股东']['result'][0]['type'] == 1:
# 1-公司
company_name = result[0]['企业股东']['result'][0]['name']
# 股东为公司,需要再次调用基本信息/企业股东天眼查接口
res = company_baseinfo(company_name)
if res == '保存成功':
res = corporate_shareholders(company_name)
else:
# 2-自然人
h_id = result[0]['企业股东']['result'][0]['id']
h_name = result[0]['企业股东']['result'][0]['name']
res = holding_enterprise(h_id, h_name)
return res
# 保存全量数据
def save_full_data(name):
"""
@ -309,6 +354,11 @@ def save_full_data(name):
res = principal_officer(name)
if res == '保存成功':
res = change_record(name)
if res == '保存成功':
res = shareholder_information(name)
return res
if __name__ == '__main__':
r = shareholder_information('四川麦克福瑞制药有限公司')
print(r)