本文整理匯總了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)