update 1.调整项目结构目录

This commit is contained in:
彭森 2021-12-01 14:09:33 +08:00
parent 26e510ec73
commit 821f81fd60
9 changed files with 86 additions and 103 deletions

25
conserve_methods.py Normal file
View File

@ -0,0 +1,25 @@
import time
from urllib import parse
import pymongo
from setting import DB_USER, DB_PASS, DB_HOST, DB_PORT
USER = parse.quote_plus(DB_USER)
PASSWORD = parse.quote_plus(DB_PASS)
client = pymongo.MongoClient('mongodb://%s:%s@%s:%s/' % (USER, PASSWORD, DB_HOST, DB_PORT))
def conserve_data(db, name, key, value):
"""
保存天眼查api接口数据
传入数据库名称企业名称集合名称需要保存的数据
"""
insert_data = dict()
insert_data['企业名称'] = 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({"企业名称": name}, {"$set": insert_data}, upsert=True)

View File

View File

@ -1,25 +0,0 @@
import time
from urllib import parse
import pymongo
from setting import DB_USER, DB_PASS, DB_HOST, DB_PORT
USER = parse.quote_plus(DB_USER)
PASSWORD = parse.quote_plus(DB_PASS)
client = pymongo.MongoClient('mongodb://%s:%s@%s:%s/' % (USER, PASSWORD, DB_HOST, DB_PORT))
def update_data(**kwargs):
"""
按条件更新数据
"""
data = kwargs['data']
my_col = client[kwargs['db']][kwargs['col']]
data['录入时间'] = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
if 'new' in kwargs:
my_col.update_one(kwargs['find'], {"$set": data}, upsert=True)
else:
my_col.update_one(kwargs['find'], {"$set": data})

18
decorator.py Normal file
View File

@ -0,0 +1,18 @@
"""
装饰器
"""
import functools
def check_status_code(func):
"""
状态码校验
天眼查api接口返回error_code校验
"""
@functools.wraps(func)
def internal(*args, **kwargs):
pass
return func(*args, **kwargs)
return internal

View File

View File

@ -1,34 +0,0 @@
from db.tyc import update_data
from setting import DB_JYFX, DB_SFFX, DB_TYFX, DB_GSBJ
# 保存司法风险
def conserve_judicial_risk(name, key, value):
insert_data = dict()
insert_data['企业名称'] = name
insert_data[key] = value
update_data(db=DB_SFFX, col=key, find={"企业名称": name}, data=insert_data, new=True)
# 保存经营风险
def conserve_business_risk(name, key, value):
insert_data = dict()
insert_data['企业名称'] = name
insert_data[key] = value
update_data(db=DB_JYFX, col=key, find={"企业名称": name}, data=insert_data, new=True)
# 保存天眼风险
def conserve_tianyan_risk(name, key, value):
insert_data = dict()
insert_data['企业名称'] = name
insert_data[key] = value
update_data(db=DB_TYFX, col=key, find={"企业名称": name}, data=insert_data, new=True)
# 保存公司背景
def conserve_company_background(name, key, vlaue):
insert_data = dict()
insert_data['企业名称'] = name
insert_data[key] = vlaue
update_data(db=DB_GSBJ, col=key, find={"企业名称": name}, data=insert_data, new=True)

View File

@ -1,19 +0,0 @@
from methods.tianyancha_api import judicial_risk, serious_violation, administrative_sanction, environmental_punishment, \
abnormal_operation, tax_arrears_announcement, tax_violation, equity_pledge, peripheral_risk, company_baseinfo
def save_full_data(name):
"""
保存天眼查全量数据
"""
judicial_risk(name)
serious_violation(name)
administrative_sanction(name)
environmental_punishment(name)
abnormal_operation(name)
tax_arrears_announcement(name)
tax_violation(name)
equity_pledge(name)
peripheral_risk(name)
company_baseinfo(name)

View File

@ -1,6 +1,6 @@
from flask import Blueprint, request
from methods.general_methods import save_full_data
from tianyancha_api import save_full_data
server_tyc = Blueprint('server_tyc', __name__)
@ -9,5 +9,5 @@ server_tyc = Blueprint('server_tyc', __name__)
@server_tyc.route('/upload_tyc_data', methods=['POST'])
def upload_tyc_data():
name = request.json['企业名称']
save_full_data(name)
return {"info": "保存成功"}, 200
res = save_full_data(name)
return {"info": res}, 200

View File

@ -4,8 +4,8 @@
import json
import requests
from methods.conserve_methods import conserve_judicial_risk, conserve_business_risk, conserve_tianyan_risk, \
conserve_company_background
from conserve_methods import conserve_data
from setting import DB_SFFX, DB_JYFX, DB_TYFX, DB_GSBJ
token = "5407573b-e41e-4ab4-9f46-daa0032ad0a4"
headers = {'Authorization': token}
@ -27,7 +27,7 @@ def judicial_risk(name):
res['诉讼'] = result['lawSuitList']
res['送达公告'] = result['sendAnnouncementList']
for key, value in res.items():
conserve_judicial_risk(name, key, value)
conserve_data(DB_SFFX, name, key, value)
except Exception:
res = dict()
res['开庭公告'] = dict()
@ -38,7 +38,7 @@ def judicial_risk(name):
res['诉讼'] = dict()
res['送达公告'] = dict()
for key, value in res.items():
conserve_judicial_risk(name, key, value)
conserve_data(DB_SFFX, name, key, value)
# 经营风险-严重违法
@ -51,10 +51,10 @@ def serious_violation(name):
res = dict()
res['result'] = result['result']['items']
res['total'] = result['result']['total']
conserve_business_risk(name, '严重违法', res)
conserve_data(DB_JYFX, name, '严重违法', res)
except Exception:
res = dict()
conserve_business_risk(name, '严重违法', res)
conserve_data(DB_JYFX, name, '严重违法', res)
# 经营风险-行政处罚
@ -67,10 +67,10 @@ def administrative_sanction(name):
res = dict()
res['result'] = result['result']['items']
res['total'] = result['result']['total']
conserve_business_risk(name, '行政处罚', res)
conserve_data(DB_JYFX, name, '行政处罚', res)
except Exception:
res = dict()
conserve_business_risk(name, '行政处罚', res)
conserve_data(DB_JYFX, name, '行政处罚', res)
# 经营风险-环保处罚
@ -83,10 +83,10 @@ def environmental_punishment(name):
res = dict()
res['result'] = result['result']['items']
res['total'] = result['result']['total']
conserve_business_risk(name, '环保处罚', res)
conserve_data(DB_JYFX, name, '环保处罚', res)
except Exception:
res = dict()
conserve_business_risk(name, '环保处罚', res)
conserve_data(DB_JYFX, name, '环保处罚', res)
# 经营风险-经营异常
@ -99,10 +99,10 @@ def abnormal_operation(name):
res = dict()
res['result'] = result['result']['items']
res['total'] = result['result']['total']
conserve_business_risk(name, '经营异常', res)
conserve_data(DB_JYFX, name, '经营异常', res)
except Exception:
res = dict()
conserve_business_risk(name, '经营异常', res)
conserve_data(DB_JYFX, name, '经营异常', res)
# 经营风险-欠税公告
@ -115,10 +115,10 @@ def tax_arrears_announcement(name):
res = dict()
res['result'] = result['result']['items']
res['total'] = result['result']['total']
conserve_business_risk(name, '欠税公告', res)
conserve_data(DB_JYFX, name, '欠税公告', res)
except Exception:
res = dict()
conserve_business_risk(name, '欠税公告', res)
conserve_data(DB_JYFX, name, '欠税公告', res)
# 经营风险-税收违法
@ -131,10 +131,10 @@ def tax_violation(name):
res = dict()
res['result'] = result['result']['items']
res['total'] = result['result']['total']
conserve_business_risk(name, '税收违法', res)
conserve_data(DB_JYFX, name, '税收违法', res)
except Exception:
res = dict()
conserve_business_risk(name, '税收违法', res)
conserve_data(DB_JYFX, name, '税收违法', res)
# 经营风险-股权出质
@ -147,10 +147,10 @@ def equity_pledge(name):
res = dict()
res['result'] = result['result']['items']
res['total'] = result['result']['total']
conserve_business_risk(name, '股权出质', res)
conserve_data(DB_JYFX, name, '股权出质', res)
except Exception:
res = dict()
conserve_business_risk(name, '股权出质', res)
conserve_data(DB_JYFX, name, '股权出质', res)
# 企业天眼风险-周边风险
@ -166,7 +166,7 @@ def peripheral_risk(name):
res['历史风险'] = result['result']['riskList'][2]
res['预警提醒'] = result['result']['riskList'][3]
for key, value in res.items():
conserve_tianyan_risk(name, key, value)
conserve_data(DB_TYFX, name, key, value)
except Exception:
res = dict()
res['自身风险'] = dict()
@ -174,7 +174,7 @@ def peripheral_risk(name):
res['历史风险'] = dict()
res['预警提醒'] = dict()
for key, value in res.items():
conserve_tianyan_risk(name, key, value)
conserve_data(DB_TYFX, name, key, value)
# 公司背景-企业基本信息
@ -185,7 +185,25 @@ def company_baseinfo(name):
try:
result = json.loads(requests.get(url, headers=headers).text)
res = result['result']
conserve_company_background(name, '基本信息', res)
conserve_data(DB_GSBJ, name, '基本信息', res)
except Exception:
res = dict()
conserve_company_background(name, '基本信息', res)
conserve_data(DB_GSBJ, name, '基本信息', res)
def save_full_data(name):
"""
调用天眼查api
保存天眼查全量数据
"""
judicial_risk(name)
serious_violation(name)
administrative_sanction(name)
environmental_punishment(name)
abnormal_operation(name)
tax_arrears_announcement(name)
tax_violation(name)
equity_pledge(name)
peripheral_risk(name)
company_baseinfo(name)
return '保存成功'