123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 |
- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
- """
- @author: Deepcold
- @file: saveEventChance.py
- @time: 2019/8/5 9:20
- """
- import pymysql
- from bin.common.parse_name_is_company import parse_name
- class saveEventChance(object):
- def __init__(self, config):
- # 每日事件数据库
- save_db = config.SAVE_DB_INFO
- self.save_db_connect = pymysql.connect(
- host=save_db.HOST, user=save_db.USER, passwd=save_db.PASSWD, db=save_db.DBNAME,
- charset='utf8', use_unicode=True)
- self.save_db_cursor = self.save_db_connect.cursor()
- def save(self, save_items, db_config):
- save_table = db_config.save_table
- for items in save_items:
- print(items)
- if "被告" in items["event_type"]:
- items["event_flag"] = "1"
- # 先查重
- try:
- self.save_db_cursor.execute(
- "SELECT id FROM daily_event WHERE EVENT_COMPANY=%s and SOURCE_PLATFORM=%s and SOURCE_ID = %s",
- (items["event_company"], items["source_platform"], items["source_id"]))
- has_value = self.save_db_cursor.fetchone()
- except Exception as e:
- has_value = None
- print(e)
- if has_value:
- pass
- else:
- try:
- self.save_db_cursor.execute(
- "INSERT INTO daily_event(EVENT_TYPE, EVENT_SUBTYPE,EVENT_COMPANY, EVENT_DESC, EVENT_DATE, PUSH_DATE, STATUS,SOURCE_PLATFORM,SOURCE_ID,SOURCE_CONTENT,EVENT_FLAG) VALUES (%s,%s,%s, %s, %s, %s, %s, %s,%s,%s,%s)",
- (items["event_type"], items["event_subtype"], items["event_company"], items["event_desc"],
- items["event_date"], items["push_date"], 0, items["source_platform"], items["source_id"],
- items["source_content"], items["event_flag"]))
- self.save_db_connect.commit()
- except Exception as e:
- print(e)
- event_id = self.save_db_cursor.lastrowid
- # 解析
- for temp in items["hasBgCase"]:
- source = temp["_source"]
- yg_name = source["yishen_yg"]
- if len(yg_name) >= 99:
- yg_name = yg_name[:99]
- # 将原告进行切分,并解析原告是否为企业
- new_yg_name_list = parse_name(yg_name)
- for new_yg_name in new_yg_name_list:
- case_id = temp["_id"]
- bg_name = items["event_company"]
- case_no = source["case_no"]
- court = source["court_name"]
- judge_date = source["judge_date"]
- case_reason = source["case_reason"]
- case_amt = source["case_amt"]
- status = 0
- # 先查重
- try:
- self.save_db_cursor.execute(
- "SELECT id FROM event_chance WHERE EVENT_ID=%s and YG_NAME=%s and BG_NAME=%s and CASE_NO = %s",
- (event_id, new_yg_name, bg_name, case_no))
- has_value = self.save_db_cursor.fetchone()
- except Exception as e:
- has_value = None
- print(e)
- if has_value:
- pass
- else:
- # 保存至事件机会表
- try:
- self.save_db_cursor.execute(
- "INSERT INTO event_chance(EVENT_ID,YG_NAME,BG_NAME,CASE_ID,CASE_NO,COURT,JUDGE_DATE,CASE_REASON,CASE_AMT,STATUS) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s)",
- (event_id, new_yg_name, bg_name, case_id, case_no, court, judge_date,
- case_reason, case_amt, status))
- self.save_db_connect.commit()
- except Exception as e:
- print(e)
- elif "原告" in items["event_type"]:
- items["event_flag"] = "0"
- # 先查重
- try:
- self.save_db_cursor.execute(
- "SELECT id FROM yg_daily_event WHERE EVENT_COMPANY='{1}' and SOURCE_PLATFORM='{2}' and SOURCE_ID = '{3}'".format
- (save_table, items["event_company"], items["source_platform"], items["source_id"]))
- has_value = self.save_db_cursor.fetchone()
- except Exception as e:
- has_value = None
- print(e)
- if has_value:
- pass
- else:
- sql = "INSERT INTO yg_daily_event"
- sql = sql + "(EVENT_TYPE, EVENT_SUBTYPE,EVENT_COMPANY, BG_NAME,EVENT_DESC, EVENT_DATE, PUSH_DATE, STATUS,SOURCE_PLATFORM,SOURCE_ID,SOURCE_CONTENT,EVENT_FLAG) VALUES (%s,%s,%s, %s,%s, %s, %s, %s, %s,%s,%s,%s)"
- data = (
- items["event_type"],
- items["event_subtype"],
- items["event_company"],
- items["bg_name"],
- items["event_desc"],
- items["event_date"],
- items["push_date"],
- 0,
- items["source_platform"],
- items["source_id"],
- items["source_content"],
- items["event_flag"])
- try:
- self.save_db_cursor.execute(sql, data)
- self.save_db_connect.commit()
- except Exception as e:
- print(e)
|