|
@@ -99,14 +99,12 @@ class GetCompositeDimFeatures(object):
|
|
|
fea_combine['unlimited_cnt'] = list(fea_combine.values()).count('不限')
|
|
|
fea_combine['features'] = str([(e.split('_')[0], e.split('_')[1], item[e]) for e in ele
|
|
|
for item in self.feature_lst if e in item.keys()])
|
|
|
- # TODO 调用人群覆盖接口
|
|
|
try:
|
|
|
get_open_account_sql = f"select account_id from ctop_user_allocation where project_id = {self.project_id} and " \
|
|
|
f"account_status = 0 limit 1"
|
|
|
account_df = pd.read_sql(get_open_account_sql, jeecg_product_db)
|
|
|
account_id = account_df.account_id.values[0]
|
|
|
- # TODO 测试用, 上线前需要注释掉
|
|
|
- account_id = 9774238
|
|
|
+ # account_id = 9774238
|
|
|
request_data = {'ages_range': age_code_transform(fea_combine.get('age')),
|
|
|
'gender': gender_code_transform(fea_combine.get('gender')),
|
|
|
'advertiser_id': account_id}
|
|
@@ -141,6 +139,7 @@ if __name__ == '__main__':
|
|
|
|
|
|
# 4、计算贝叶斯组合入库
|
|
|
for project_id in config['projectId']:
|
|
|
+ logger.info(f"开始获取项目{project_id}的当前活跃素材")
|
|
|
# 4.1 获取指定项目下当前活跃的素材信息
|
|
|
# 如近60天内累计激活个数达到100个(开发环境或者生产环境,这部分都读取生产数据库)
|
|
|
start_date = datetime.datetime.now().date() + datetime.timedelta(days=-config['activeMaterialFilterRule']['days'])
|
|
@@ -152,6 +151,7 @@ if __name__ == '__main__':
|
|
|
active_signatures = active_signatures * 2 if len(active_signatures) == 1 else active_signatures
|
|
|
|
|
|
# 4.2 在素材人群报表筛选里面累计100个激活
|
|
|
+ logger.info(f"开始获取项目{project_id}的活跃素材的人群分析报表")
|
|
|
sql = f"select signature from ctop_kuaishou_audience_report_daily_age_material where signature in {tuple(active_signatures)} " \
|
|
|
f"group by signature having sum(activation) >= {config['getBaysCombineMaterialFilterRule']['activation']}"
|
|
|
df = pd.read_sql(sql, jeecg_product_db)
|