Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
K
kb
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 2
    • Issues 2
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • Operations
    • Operations
    • Incidents
  • Analytics
    • Analytics
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • granite
  • kb
  • Wiki
    • Data_stream
    • Risk
  • risk_zxgk

Last edited by liuzhiqiang Jul 08, 2022
Page history
This is an old version of this page. You can view the most recent version or browse the history.

risk_zxgk

执行公开执行公开网详细说明

数据简介

1.数据获取来源于官网

  • 因为此前发现综合查询入口查询数据不全的情况,便选择从子入口获取不同维度数据。
  • 目前爬取的数据包括失信被执行人,限制消费人员,被执行人,终结本次案件和财产处置的询价评估
    • 失信被执行人:目前业务库数据来源于第三方,我们也爬取了官网的数据, 表位于bdp-ext.rwlb.rds.aliyuncs.com bdp_risk.risk_shixin_spider_find_new。
    • 被执行人,限制消费人员与终结本次案件:目前业务库更新与例行都依靠从官网爬取的数据。 业务库中存在第三方数据,标识为update_source字段非空。 表位于bdp-rds-001.mysql.rds.aliyuncs.com utn_ng_risk
    • 询价评估:处于开发阶段。

数据例行与找新

1.例行

  • 被执行人

    • 通过zhixing_id进行例行。例行更新发布的zhixing_id都是use_flag为0的数据。 表内的唯一键是对名称+案号拼接后的字符串进行md5加密生成的。 zhixing_id爬取结果为1101时,标记为历史数据,即将表内use_flag置为9。 爬取结果为1000时,进行插入或更新。
    • 通过pname进行例行。每天取前一天use_flag被置为9的数据中的pname发布任务。 这是因为同一条数据的zhixing_id会变化,为了避免误置为历史数据才发布此任务。
  • 终结本次案件

    • 通过zhongben_id进行例行,zhixing_id爬取结果为1101时,标记为历史数据,即将表内is_history置为1。 爬取结果为1000时,进行插入或更新。业务表没有唯一键,通过入库的代码通过案号和名称保证数据不重复。
    • 终本暂未开发按名称查询的爬虫。
  • 限制消费人员

    • 通过name进行例行。限销表内唯一键为xianxiao_id,按照xianxiao_id进行数据更新。 按照name爬取的结果包含此名字在官网上搜索的所有结果。 将业务表中对应任务name的xianxiao_id不匹配爬虫结果xinaxiao_id的数据置为历史数据, 即将表内is_history置为1。

2.找新

  • 详见 zxgk找新说明

  • 被执行人

    • 通过zhixing_id进行找新。
  • 终结本次案件

    • 通过zhongben_id进行找新。
  • 限制消费人员

    • 通过name进行找新。

数据问题

清洗程序及部署

找新简述

执行公开找新(包含:'zhixing','shixin','xianxiao','zhongben')
zhixing: 通过任务表增加的zhixing_id和爬取结果1101的zhixing_id进行找新
shixin: 通过任务表增加的ep_id和爬取结果1101的ep_id进行找新
zhongben: 通过任务表增加的zhongben_id和爬取结果1101的zhongben_id进行找新
xianxiao: 通过shixin和zhongben新增数据的name进行找新

数据关系

执行公开网站信息首先进入被执行人数据库,如果被执行人未履行生效法律文书确定的义务并具有相关法律规定的情形则纳入失信被执行人。如果被执行人确无可供执行财产,则纳入终本案件。失信和终本都可能被纳入限消名单。

找新策略详情

* 被执行人
  * 每天发布四次任务,每次发布的zhixing_id为距今十五天内且爬取失败次数小于80次且爬取结果为1101或null的zhixing_id
  * 每次发布任务前,判断任务表内执行结果为1000的最大zhixing_id id1与表内最大zhixing_id id2,若两个id之差(id2-id1)小于七万,就补充差额的zhixing_id到任务表内。

* 终本案件
  * 根据每天终本网页上的最大zhongben_id(有些zhongben_id为错误值,需要排除),按照向上增加2万,向下增加6万的范围补充执行任务表内没有的id
  * 每天发布四次任务,每次发布的zhongben_id为距今3天内且爬取失败次数小于80次且爬取结果为1101或null的zhongben_id

* 限制高消费
  * 使用每天失信和终本新增的name作为任务进行查找

* 失信被执行人
  * 与被执行招新策略一致,增大ep_id后发布任务

发布id的时间范围,最大失败次数以及补充id的范围都可通过data_pump的参数进行调整

data_pump参数说明

task_type
(任务类型)
search_days
(任务表发布时间范围)
incre
(向上扩大id数量)
decre
(向下扩大id数量)
max_failure_number
(爬取失败最大次数,默认80)
zhixing -v search_days 16 -v incre 70000 -v decre 0 80
zhongben -v search_days 4 -v incre 20000 -v decre 40000 80
shixin -v search_days 16 -v incre 70000 -v decre 0 80

队列名称及队列地址

  • redis host: redis://:utn@0818@bdp-mq-001.redis.rds.aliyuncs.com:6379/7
  • redis port: 6379
  • redis db: 7
  • redis key:
    • risk_zxgk

优先级队列说明

  • risk_zxgk 支持队列优先级
    • 找新任务
      • zhixing:risk_zxgk:101
      • shixin:risk_zxgk:102
      • zhongben:risk_zxgk:103
      • xianxiao:risk_zxgk:4
    • 存量循环更新任务
      • zhixing:risk_zxgk:51
      • shixin:risk_zxgk:52
      • zhongben:risk_zxgk:53
      • xianxiao:risk_zxgk:2
    • 补漏及其他任务
      • risk_zxgk:60

任务输入参数(样例)

找新任务

zhixing
{
  "zhixing_id": "1371041114",
  "task_type": "spider_zhixing_task",
  "update_id_type": "zhixing"
}

shixin
{
  "shixin_id": "1371041114",
  "task_type": "spider_shixin_task",
  "update_id_type": "shixin"
}

xianxiao
{
  "pname": "刘春志",
  "task_type": "spider_xianxiao_task",
  "update_id_type": "xianxiao"
}

zhongben
{
  "zhongben_id": "1371041114",
  "task_type": "spider_zhongben_task",
  "update_id_type": "zhongben"
}

例行更新任务

任务参数中update_id_type变化
zhixing
{
  "zhixing_id": "1371041114",
  "task_type": "spider_zhixing_task",
  "update_id_type": "zhixing_routine"
}

shixin
{
  "shixin_id": "1371041114",
  "task_type": "spider_shixin_task",
  "update_id_type": "shixin_routine"
}

xianxiao
{
  "pname": "刘春志",
  "task_type": "spider_xianxiao_task",
  "update_id_type": "xianxiao_routine"
}

zhongben
{
  "zhongben_id": "1371041114",
  "task_type": "spider_zhongben_task",
  "update_id_type": "zhongben_routine"
}

代码地址

data_type 代码简介 代码地址
zhixing, shixin, zhongben 通过任务表发布任务到redis http://192.168.109.110/granite/project-collie-app/-/blob/master/app_risk/data_pump/zxgk_update_id_to_redis.yml
zhixing, shixin, zhongben 将爬虫结果更新到任务表中 http://192.168.109.110/granite/project-collie-app/-/blob/master/app_risk/data_pump/zxgk_update_id.yml
xianxiao 将新增的shixin和zhongben的name发布到redis http://192.168.109.110/granite/project-collie-app/-/blob/master/app_risk/data_pump/xianxiao_find_new_to_redis.yml

数据存储表地址

任务表:主要包括id(zhixing_id,ep_id,zhongben_id),task_result(1000/1101/null),
failures_number(爬取失败次数:0--max_failure_number)等字段
data_type 表简介 数据库地址 表名
zhixing zhixing任务表,用于发布爬虫任务 bdp-ext.rwlb.rds.aliyuncs.com bdp_risk.risk_zhixing_loss
shixin shixin任务表,用于发布爬虫任务 bdp-ext.rwlb.rds.aliyuncs.com bdp_risk.risk_shixin_loss
zhongben zhongben任务表,用于发布爬虫任务 bdp-ext.rwlb.rds.aliyuncs.com bdp_risk.risk_zhongben_loss
业务表:业务数据,包含爬虫结果(id,name等)以及内部分析字段(company_name_digest等)
data_type 表简介 数据库地址 表名
zhixing zhixing业务表,记录所有业务字段 bdp-rds-001.mysql.rds.aliyuncs.com utn_ng_risk.risk_zhixing
shixin shixin业务表,记录所有业务字段 bdp-rds-003.mysql.rds.aliyuncs.com utn_risk.risk_shixin
zhongben zhongben业务表,记录所有业务字段 bdp-rds-001.mysql.rds.aliyuncs.com utn_ng_risk.risk_zhongben
xianxiao xianxiao业务表,记录所有业务字段 bdp-rds-001.mysql.rds.aliyuncs.com utn_ng_risk.risk_xianxiao

钉钉预警

找新预警:以zhongben找新为例,其余三种数据预警逻辑一致,每天找新成功的爬虫日志少于10条时预警

报警信息:zhongben24小时内找新失败
索引:public-company-spider-data-*
监控频率:每4小时一次
监控起止时间: 06:00到20:00
报警条件:spider_name=risk_zxgk 且 task_params.update_id_type=zhongben 且 task_result=1000 24小时内量少于10条

补漏预警:以zhongben补漏为例,zhixing与shixin预警逻辑一致,统计每天任务表内未更新的数据写到total字段,total>10报警,或补漏预警程序失败未向es写入数据时报警

报警内容:"报警:zhongben补漏数据24小时内未更新"
索引:mysql_stat-*
监控频率:每天两次
监控时间:10:00和16:00
报警条件:db_host=bdp-ext.rwlb.rds.aliyuncs.com且db_name=bdp_risk且db_table=risk_zhongben_loss 24小时内量为0条
或db_host=bdp-ext.rwlb.rds.aliyuncs.com且db_name=bdp_risk且db_table=risk_zhongben_loss 且total>10 24小时内量大于1条

例行更新预警:zhixing T+3预警,统计三天内es例行任务量与业务表中满足例行条件的数据量进行比较,差值计入total字段,total<0,说明三天内未例行完成,进行报警

报警内容:"报警:被执行表T+3更新未完成"
索引:mysql_stat-*
监控频率:每天一次
监控时间:10:00
报警条件:db_host=bdp-rds-001.mysql.rds.aliyuncs.com且db_name=utn_ng_risk且db_table=risk_zhixing且total<0 24小时内量大于0条

部署地址

10.8.6.18

部署方法及说明

  • crontab + data_pump
  • supervisor + data_pump
  • supervisor + consumer

数据接收来源

1.爬虫数据进行数据更新
2.代码生成新的执行id进行爬虫任务发布
Clone repository
  • README
  • basic_guidelines
  • basic_guidelines
    • basic_guidelines
    • dev_guide
    • project_build
    • 开发流程
  • best_practice
  • best_practice
    • AlterTable
    • RDS
    • azkaban
    • create_table
    • design
    • elasticsearch
    • elasticsearch
      • ES运维
    • logstash
View All Pages