2021-12-01 10:31:39 +08:00
|
|
|
"""
|
|
|
|
天眼查API
|
|
|
|
"""
|
|
|
|
import json
|
|
|
|
import requests
|
|
|
|
|
2021-12-01 17:05:47 +08:00
|
|
|
from conserve_methods import conserve_data, judege_api_code
|
2021-12-01 14:09:33 +08:00
|
|
|
from setting import DB_SFFX, DB_JYFX, DB_TYFX, DB_GSBJ
|
2021-12-01 10:31:39 +08:00
|
|
|
|
2021-12-01 17:05:47 +08:00
|
|
|
# token = "5407573b-e41e-4ab4-9f46-daa0032ad0a4"
|
|
|
|
token = "5407573b-e41e-4ab4-9f46-daa0032ad0a8"
|
2021-12-01 10:31:39 +08:00
|
|
|
headers = {'Authorization': token}
|
|
|
|
|
|
|
|
|
|
|
|
# 司法风险
|
|
|
|
def judicial_risk(name):
|
|
|
|
url = 'http://open.api.tianyancha.com/services/open/cb/judicial/2.0?keyword={}'
|
|
|
|
url = url.format(name)
|
|
|
|
|
|
|
|
try:
|
2021-12-01 17:05:47 +08:00
|
|
|
res = json.loads(requests.get(url, headers=headers).text)
|
|
|
|
result = res['result']
|
|
|
|
code = res['error_code']
|
|
|
|
status = judege_api_code(code)
|
|
|
|
if status == '请求成功':
|
|
|
|
res = dict()
|
|
|
|
res['开庭公告'] = result['ktAnnouncementList']
|
|
|
|
res['被执行人'] = result['zhixingList']
|
|
|
|
res['法院公告'] = result['courtAnnouncementList']
|
|
|
|
res['立案信息'] = result['courtRegisterList']
|
|
|
|
res['失信人'] = result['dishonestList']
|
|
|
|
res['诉讼'] = result['lawSuitList']
|
|
|
|
res['送达公告'] = result['sendAnnouncementList']
|
|
|
|
for key, value in res.items():
|
|
|
|
conserve_data(DB_SFFX, name, key, value)
|
|
|
|
return '保存成功'
|
|
|
|
else:
|
|
|
|
return status
|
2021-12-01 10:31:39 +08:00
|
|
|
except Exception:
|
|
|
|
res = dict()
|
|
|
|
res['开庭公告'] = dict()
|
|
|
|
res['被执行人'] = dict()
|
|
|
|
res['法院公告'] = dict()
|
|
|
|
res['立案信息'] = dict()
|
|
|
|
res['失信人'] = dict()
|
|
|
|
res['诉讼'] = dict()
|
|
|
|
res['送达公告'] = dict()
|
|
|
|
for key, value in res.items():
|
2021-12-01 14:09:33 +08:00
|
|
|
conserve_data(DB_SFFX, name, key, value)
|
2021-12-01 17:05:47 +08:00
|
|
|
return '保存成功'
|
2021-12-01 10:31:39 +08:00
|
|
|
|
|
|
|
|
|
|
|
# 经营风险-严重违法
|
|
|
|
def serious_violation(name):
|
|
|
|
url = 'http://open.api.tianyancha.com/services/open/mr/illegalinfo/2.0?pageSize=20&keyword={}&pageNum=1'
|
|
|
|
url = url.format(name)
|
|
|
|
|
|
|
|
try:
|
2021-12-01 17:05:47 +08:00
|
|
|
res = json.loads(requests.get(url, headers=headers).text)
|
|
|
|
code = res['error_code']
|
|
|
|
status = judege_api_code(code)
|
|
|
|
if status == '请求成功':
|
|
|
|
result = dict()
|
|
|
|
result['result'] = res['result']['items']
|
|
|
|
result['total'] = res['result']['total']
|
|
|
|
conserve_data(DB_JYFX, name, '严重违法', result)
|
|
|
|
return '保存成功'
|
|
|
|
else:
|
|
|
|
return status
|
2021-12-01 10:31:39 +08:00
|
|
|
except Exception:
|
|
|
|
res = dict()
|
2021-12-01 14:09:33 +08:00
|
|
|
conserve_data(DB_JYFX, name, '严重违法', res)
|
2021-12-01 17:05:47 +08:00
|
|
|
return '保存成功'
|
2021-12-01 10:31:39 +08:00
|
|
|
|
|
|
|
|
|
|
|
# 经营风险-行政处罚
|
|
|
|
def administrative_sanction(name):
|
|
|
|
url = 'http://open.api.tianyancha.com/services/open/mr/punishmentInfo/3.0?pageSize=20&keyword={}&pageNum=1'
|
|
|
|
url = url.format(name)
|
|
|
|
|
|
|
|
try:
|
|
|
|
result = json.loads(requests.get(url, headers=headers).text)
|
|
|
|
res = dict()
|
|
|
|
res['result'] = result['result']['items']
|
|
|
|
res['total'] = result['result']['total']
|
2021-12-01 14:09:33 +08:00
|
|
|
conserve_data(DB_JYFX, name, '行政处罚', res)
|
2021-12-01 10:31:39 +08:00
|
|
|
except Exception:
|
|
|
|
res = dict()
|
2021-12-01 14:09:33 +08:00
|
|
|
conserve_data(DB_JYFX, name, '行政处罚', res)
|
2021-12-01 10:31:39 +08:00
|
|
|
|
|
|
|
|
|
|
|
# 经营风险-环保处罚
|
|
|
|
def environmental_punishment(name):
|
|
|
|
url = 'http://open.api.tianyancha.com/services/open/mr/environmentalPenalty/2.0?name={}&pageSize=20&pageNum=1'
|
|
|
|
url = url.format(name)
|
|
|
|
|
|
|
|
try:
|
|
|
|
result = json.loads(requests.get(url, headers=headers).text)
|
|
|
|
res = dict()
|
|
|
|
res['result'] = result['result']['items']
|
|
|
|
res['total'] = result['result']['total']
|
2021-12-01 14:09:33 +08:00
|
|
|
conserve_data(DB_JYFX, name, '环保处罚', res)
|
2021-12-01 10:31:39 +08:00
|
|
|
except Exception:
|
|
|
|
res = dict()
|
2021-12-01 14:09:33 +08:00
|
|
|
conserve_data(DB_JYFX, name, '环保处罚', res)
|
2021-12-01 10:31:39 +08:00
|
|
|
|
|
|
|
|
|
|
|
# 经营风险-经营异常
|
|
|
|
def abnormal_operation(name):
|
|
|
|
url = 'http://open.api.tianyancha.com/services/open/mr/abnormal/2.0?pageSize=20&keyword={}&pageNum=1'
|
|
|
|
url = url.format(name)
|
|
|
|
|
|
|
|
try:
|
|
|
|
result = json.loads(requests.get(url, headers=headers).text)
|
|
|
|
res = dict()
|
|
|
|
res['result'] = result['result']['items']
|
|
|
|
res['total'] = result['result']['total']
|
2021-12-01 14:09:33 +08:00
|
|
|
conserve_data(DB_JYFX, name, '经营异常', res)
|
2021-12-01 10:31:39 +08:00
|
|
|
except Exception:
|
|
|
|
res = dict()
|
2021-12-01 14:09:33 +08:00
|
|
|
conserve_data(DB_JYFX, name, '经营异常', res)
|
2021-12-01 10:31:39 +08:00
|
|
|
|
|
|
|
|
|
|
|
# 经营风险-欠税公告
|
|
|
|
def tax_arrears_announcement(name):
|
|
|
|
url = 'http://open.api.tianyancha.com/services/open/mr/ownTax/2.0?pageSize=20&keyword={}&pageNum=1'
|
|
|
|
url = url.format(name)
|
|
|
|
|
|
|
|
try:
|
|
|
|
result = json.loads(requests.get(url, headers=headers).text)
|
|
|
|
res = dict()
|
|
|
|
res['result'] = result['result']['items']
|
|
|
|
res['total'] = result['result']['total']
|
2021-12-01 14:09:33 +08:00
|
|
|
conserve_data(DB_JYFX, name, '欠税公告', res)
|
2021-12-01 10:31:39 +08:00
|
|
|
except Exception:
|
|
|
|
res = dict()
|
2021-12-01 14:09:33 +08:00
|
|
|
conserve_data(DB_JYFX, name, '欠税公告', res)
|
2021-12-01 10:31:39 +08:00
|
|
|
|
|
|
|
|
|
|
|
# 经营风险-税收违法
|
|
|
|
def tax_violation(name):
|
|
|
|
url = 'http://open.api.tianyancha.com/services/open/mr/taxContravention/2.0?pageSize=20&keyword={}&pageNum=1'
|
|
|
|
url = url.format(name)
|
|
|
|
|
|
|
|
try:
|
|
|
|
result = json.loads(requests.get(url, headers=headers).text)
|
|
|
|
res = dict()
|
|
|
|
res['result'] = result['result']['items']
|
|
|
|
res['total'] = result['result']['total']
|
2021-12-01 14:09:33 +08:00
|
|
|
conserve_data(DB_JYFX, name, '税收违法', res)
|
2021-12-01 10:31:39 +08:00
|
|
|
except Exception:
|
|
|
|
res = dict()
|
2021-12-01 14:09:33 +08:00
|
|
|
conserve_data(DB_JYFX, name, '税收违法', res)
|
2021-12-01 10:31:39 +08:00
|
|
|
|
|
|
|
|
|
|
|
# 经营风险-股权出质
|
|
|
|
def equity_pledge(name):
|
|
|
|
url = 'http://open.api.tianyancha.com/services/open/mr/equityInfo/2.0?pageSize=20&keyword={}&pageNum=1'
|
|
|
|
url = url.format(name)
|
|
|
|
|
|
|
|
try:
|
|
|
|
result = json.loads(requests.get(url, headers=headers).text)
|
|
|
|
res = dict()
|
|
|
|
res['result'] = result['result']['items']
|
|
|
|
res['total'] = result['result']['total']
|
2021-12-01 14:09:33 +08:00
|
|
|
conserve_data(DB_JYFX, name, '股权出质', res)
|
2021-12-01 10:31:39 +08:00
|
|
|
except Exception:
|
|
|
|
res = dict()
|
2021-12-01 14:09:33 +08:00
|
|
|
conserve_data(DB_JYFX, name, '股权出质', res)
|
2021-12-01 10:31:39 +08:00
|
|
|
|
|
|
|
|
|
|
|
# 企业天眼风险-周边风险
|
|
|
|
def peripheral_risk(name):
|
|
|
|
url = 'http://open.api.tianyancha.com/services/open/risk/riskInfo/2.0?keyword={}'
|
|
|
|
url = url.format(name)
|
|
|
|
|
|
|
|
try:
|
|
|
|
result = json.loads(requests.get(url, headers=headers).text)
|
|
|
|
res = dict()
|
|
|
|
res['自身风险'] = result['result']['riskList'][0]
|
|
|
|
res['周边风险'] = result['result']['riskList'][1]
|
|
|
|
res['历史风险'] = result['result']['riskList'][2]
|
|
|
|
res['预警提醒'] = result['result']['riskList'][3]
|
|
|
|
for key, value in res.items():
|
2021-12-01 14:09:33 +08:00
|
|
|
conserve_data(DB_TYFX, name, key, value)
|
2021-12-01 10:31:39 +08:00
|
|
|
except Exception:
|
|
|
|
res = dict()
|
|
|
|
res['自身风险'] = dict()
|
|
|
|
res['周边风险'] = dict()
|
|
|
|
res['历史风险'] = dict()
|
|
|
|
res['预警提醒'] = dict()
|
|
|
|
for key, value in res.items():
|
2021-12-01 14:09:33 +08:00
|
|
|
conserve_data(DB_TYFX, name, key, value)
|
2021-12-01 10:31:39 +08:00
|
|
|
|
|
|
|
|
|
|
|
# 公司背景-企业基本信息
|
|
|
|
def company_baseinfo(name):
|
|
|
|
url = 'http://open.api.tianyancha.com/services/open/ic/baseinfo/normal?keyword={}'
|
|
|
|
url = url.format(name)
|
|
|
|
|
|
|
|
try:
|
|
|
|
result = json.loads(requests.get(url, headers=headers).text)
|
|
|
|
res = result['result']
|
2021-12-01 14:09:33 +08:00
|
|
|
conserve_data(DB_GSBJ, name, '基本信息', res)
|
2021-12-01 10:31:39 +08:00
|
|
|
except Exception:
|
|
|
|
res = dict()
|
2021-12-01 14:09:33 +08:00
|
|
|
conserve_data(DB_GSBJ, name, '基本信息', res)
|
|
|
|
|
|
|
|
|
|
|
|
def save_full_data(name):
|
|
|
|
"""
|
|
|
|
调用天眼查api
|
|
|
|
保存天眼查全量数据
|
|
|
|
"""
|
2021-12-01 17:05:47 +08:00
|
|
|
info = None
|
|
|
|
# judicial_risk(name)
|
|
|
|
info = 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 info
|