# 读取配置 from lib.dataread import * from config_juxiting_yuedu import * import datetime from models.nerulforcastmodels import pp_bdwd_png global_config.update({ # 核心参数 'logger': logger, 'dataset': dataset, 'y': y, # 'offsite_col': offsite_col, # 'avg_cols': avg_cols, # 'offsite': offsite, 'edbcodenamedict': edbcodenamedict, 'is_debug': is_debug, 'is_train': is_train, 'is_fivemodels': is_fivemodels, 'is_update_report': is_update_report, 'settings': settings, 'bdwdname': bdwdname, 'columnsrename': columnsrename, 'price_columns': price_columns, # 模型参数 'data_set': data_set, 'input_size': input_size, 'horizon': horizon, 'train_steps': train_steps, 'val_check_steps': val_check_steps, 'val_size': val_size, 'test_size': test_size, 'modelsindex': modelsindex, 'rote': rote, 'bdwd_items': bdwd_items, # 特征工程开关 'is_del_corr': is_del_corr, 'is_del_tow_month': is_del_tow_month, 'is_eta': is_eta, 'is_update_eta': is_update_eta, 'is_fivemodels': is_fivemodels, 'is_update_predict_value': is_update_predict_value, 'early_stop_patience_steps': early_stop_patience_steps, # 时间参数 'start_year': start_year, 'end_time': end_time or datetime.datetime.now().strftime("%Y-%m-%d"), 'freq': freq, # 保持列表结构 # 接口配置 'login_pushreport_url': login_pushreport_url, 'login_data': login_data, 'upload_url': upload_url, 'upload_data': upload_data, 'upload_warning_url': upload_warning_url, 'warning_data': warning_data, # 查询接口 'query_data_list_item_nos_url': query_data_list_item_nos_url, 'query_data_list_item_nos_data': query_data_list_item_nos_data, # 上传数据项 'push_data_value_list_url': push_data_value_list_url, 'push_data_value_list_data': push_data_value_list_data, 'push_png_report_url': push_png_report_url, 'push_png_report_data': push_png_report_data, # eta 配置 'APPID': APPID, 'SECRET': SECRET, 'etadata': data, 'edbcodelist': edbcodelist, 'ClassifyId': ClassifyId, 'edbcodedataurl': edbcodedataurl, 'classifyidlisturl': classifyidlisturl, 'edbdatapushurl': edbdatapushurl, 'edbdeleteurl': edbdeleteurl, 'edbbusinessurl': edbbusinessurl, 'ClassifyId': ClassifyId, 'classifylisturl': classifylisturl, # 数据库配置 'sqlitedb': sqlitedb, 'is_bdwd': is_bdwd, 'db_mysql': db_mysql, 'DEFAULT_CONFIG': DEFAULT_CONFIG, }) def push_png_report(): current_end_time = global_config['end_time'] previous_trading_day = (pd.Timestamp(current_end_time) - pd.tseries.offsets.BusinessDay(1)).strftime('%Y-%m-%d') png_report_files = ['pp_zhouducorrelation.png', 'pp_yueducorrelation.png'] for png_report_file in png_report_files: logger.info(f'发送图片{png_report_file}到钉钉工作组') try: with open(os.path.join(global_config['dataset'], png_report_file), 'rb') as f: base64_data = base64.b64encode(f.read()).decode('utf-8') config.upload_data["data"]["fileBase64"] = base64_data data = global_config['push_png_report_data'] data['data']['fileBase64'] = base64_data data['data']['billNo'] = str(time.time()) pngreportdata = push_png_report_to_market(data) logger.info(f'{png_report_file}推送图片报告到钉钉成功{pngreportdata}') except Exception as e: logger.error(f'{png_report_file}推送图片报告到钉钉失败:{e}') if __name__ == '__main__': # 图片报告 try: logger.info('图片报告ing') global_config['end_time'] = '2025-08-14' pp_bdwd_png(global_config=global_config) logger.info('图片报告end') except Exception as e: logger.info(f'图片报告失败:{e}') # time.sleep(5) # push_png_report()