本文整理汇总了Python中r2.models.LiveAdWeights.set_all_from_weights方法的典型用法代码示例。如果您正苦于以下问题:Python LiveAdWeights.set_all_from_weights方法的具体用法?Python LiveAdWeights.set_all_from_weights怎么用?Python LiveAdWeights.set_all_from_weights使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类r2.models.LiveAdWeights
的用法示例。
在下文中一共展示了LiveAdWeights.set_all_from_weights方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: set_live_promotions
# 需要导入模块: from r2.models import LiveAdWeights [as 别名]
# 或者: from r2.models.LiveAdWeights import set_all_from_weights [as 别名]
def set_live_promotions(weights):
start = time.time()
# First, figure out which subreddits have had ads recently
today = promo_datetime_now()
yesterday = today - timedelta(days=1)
tomorrow = today + timedelta(days=1)
promo_weights = PromotionWeights.get_campaigns(yesterday, tomorrow)
subreddit_names = set(p.sr_name for p in promo_weights)
subreddits = Subreddit._by_name(subreddit_names).values()
# Set the default for those subreddits to no ads
all_weights = {sr._id: [] for sr in subreddits}
# Mix in the currently live ads
all_weights.update(weights)
if "" in all_weights:
all_weights[LiveAdWeights.FRONT_PAGE] = all_weights.pop("")
LiveAdWeights.set_all_from_weights(all_weights)
end = time.time()
g.log.info("promote.set_live_promotions completed in %s seconds", end - start)