Update September 10 dashboard data and event sources
This commit is contained in:
@@ -41,14 +41,17 @@ def event_names(value):
|
||||
if not value or value == '-': return []
|
||||
return [x.strip().lower() for x in re.split(r'[,,;/;\n]+', value) if x.strip()]
|
||||
|
||||
events, covered_dates = {}, set()
|
||||
events, covered_scopes = {}, set()
|
||||
if events_path:
|
||||
with open(events_path, encoding='utf-8-sig', newline='') as f:
|
||||
for event_row in csv.DictReader(f):
|
||||
dt = re.sub(r'[^0-9]', '', event_row.get('dt', ''))
|
||||
if len(dt) == 8: dt = f'{dt[:4]}-{dt[4:6]}-{dt[6:]}'
|
||||
covered_dates.add(dt)
|
||||
key = (dt, event_row.get('pkg_name','').strip(), event_row.get('offer_name','').strip(),
|
||||
channel = event_row.get('second_channel','').lower()
|
||||
event_source = next((s for s in ('mintegral','bigo','kwai') if s in channel), '')
|
||||
if not event_source: continue
|
||||
covered_scopes.add((dt, event_source))
|
||||
key = (dt, event_row.get('pkg_name','').strip(), event_source, event_row.get('offer_name','').strip(),
|
||||
event_row.get('event_name','').strip().lower())
|
||||
events[key] = events.get(key, 0) + num(event_row.get('event_num'))
|
||||
|
||||
@@ -87,10 +90,10 @@ for raw_row in matrix[1:] if has_header else matrix:
|
||||
group, shown, adping = '对照组', 'General campaign', ''
|
||||
date = cell(raw_row, 'date').strip() or target
|
||||
required = event_names(meta.get('kpi',''))
|
||||
if not required or source != 'mintegral' or date not in covered_dates:
|
||||
if not required or (date, source) not in covered_scopes:
|
||||
event = None
|
||||
else:
|
||||
event = sum(events.get((date, pkg, campaign, name), 0) for name in required)
|
||||
event = sum(events.get((date, pkg, source, campaign, name), 0) for name in required)
|
||||
rows.append({'date': cell(raw_row, 'date').strip() or target, 'pkg':pkg, 'geo':meta['geo'], 'source':source,
|
||||
'group':group, 'adpingId':adping, 'campaign':shown, 'status':'Active', 'kpi':meta.get('kpi',''),
|
||||
'event':event,
|
||||
|
||||
Reference in New Issue
Block a user