# coding=utf-8 from sdk.tool.ad_json_6 import * def _find_and_add_facebook_platform_app_id(ad_json): fb_pool = ad_json.get_pool(AD_TYPE.INTERSTITIAL, AD_PLATFROM.FACEBOOK) if fb_pool is None: Logging.error("未找到facebook的插屏池,请确认原ad.json是否正常,或已经转换成了bidding") exit(0) max_priority_fb_ad_id = fb_pool.max_priority_ad_id() fb_app_id = max_priority_fb_ad_id.split("_")[0] print "读取到facebook的AppId: {}".format(fb_app_id) ad_json.add_platform_id(RED_SDK_AD_PLATFORM.FACEBOOK_BID, fb_app_id) print fb_app_id def _trans_facebook_waterfull_to_bidding(ad_json, ad_type): pool = ad_json.get_pool(ad_type, AD_PLATFROM.FACEBOOK) if pool is None: Logging.error("未找到facebook的插屏池,请确认原ad.json是否正常,或已经转换成了bidding") exit(0) max_id = pool.max_priority_ad_id() bidders = ad_json.get_bidders(ad_type) bidders.add_bidder(AD_PLATFROM.FACEBOOK, max_id) ad_json.remove_pool(ad_type, AD_PLATFROM.FACEBOOK) ad_json.remove_strategy(ad_type, AD_PLATFROM.FACEBOOK) def _print_script_info(): print "************************************************************" print "* 脚本作用: 升级ad.json到6.1.4所需要的格式 " print "* 参数说明:" print "* 源ad.json文件路径" print "* 转换后写入ad.json文件路径(为空则写入源文件)" print "* 例:" print "* python ad_json_facebook_bidding.py /user/test/ad.json" print "************************************************************" print "" def add_facebook_bidding(old_ad_json_path, to_ad_json_path): print "源ad.json: {}".format(old_ad_json_path) ad_json = AdJson6() ad_json.read(old_ad_json_path) _find_and_add_facebook_platform_app_id(ad_json) _trans_facebook_waterfull_to_bidding(ad_json, AD_TYPE.INTERSTITIAL) _trans_facebook_waterfull_to_bidding(ad_json, AD_TYPE.VIDEO) print "--------------------------" ad_json.print_desc() # 写入 if to_ad_json_path is None: to_ad_json_path = old_ad_json_path ad_json.write(to_ad_json_path) print "目标ad.json写入成功: {}".format(to_ad_json_path) def run(argv): _print_script_info() if len(argv) < 3: Logging.error("参数个数小于2个") exit(0) from_path = argv[1] to_path = argv[2] add_facebook_bidding(from_path, to_path) if __name__ == '__main__': arg_v = [ "ad_json_facebook_bidding.py", "/Users/zhuge/Temp/20201226/test/ad.json", "/Users/zhuge/Temp/20201226/test/ad_facebook_bidding.json", ] run(arg_v)