本文整理汇总了Python中r2.models.Subreddit.top_lang_srs方法的典型用法代码示例。如果您正苦于以下问题:Python Subreddit.top_lang_srs方法的具体用法?Python Subreddit.top_lang_srs怎么用?Python Subreddit.top_lang_srs使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类r2.models.Subreddit
的用法示例。
在下文中一共展示了Subreddit.top_lang_srs方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: get_predicted_pageviews
# 需要导入模块: from r2.models import Subreddit [as 别名]
# 或者: from r2.models.Subreddit import top_lang_srs [as 别名]
def get_predicted_pageviews(srs, start, end):
srs, is_single = tup(srs, ret_is_single=True)
sr_names = [sr.name for sr in srs]
# default subreddits require a different inventory factor
content_langs = [g.site_lang]
default_srids = Subreddit.top_lang_srs(content_langs,
limit=g.num_default_reddits,
filter_allow_top=True, over18=False,
ids=True)
# prediction does not vary by date
daily_inventory = PromoMetrics.get(MIN_DAILY_CASS_KEY, sr_names=sr_names)
dates = get_date_range(start, end)
ret = {}
for sr in srs:
if not isinstance(sr, FakeSubreddit) and sr._id in default_srids:
factor = DEFAULT_INVENTORY_FACTOR
else:
factor = INVENTORY_FACTOR
sr_daily_inventory = daily_inventory.get(sr.name, 0) * factor
sr_daily_inventory = int(sr_daily_inventory)
ret[sr.name] = dict.fromkeys(dates, sr_daily_inventory)
if is_single:
return ret[srs[0].name]
else:
return ret
示例2: get_traffic_weights
# 需要导入模块: from r2.models import Subreddit [as 别名]
# 或者: from r2.models.Subreddit import top_lang_srs [as 别名]
def get_traffic_weights(srnames):
from r2.models.traffic import PageviewsBySubreddit
# the weight is just the last 7 days of impressions (averaged)
def weigh(t, npoints=7):
if t and len(t) > 1:
t = [y[1] for x, y in t[-npoints - 1:-1]]
return max(float(sum(t)) / len(t), 1)
return 1
default_traffic = [weigh(PageviewsBySubreddit.history("day", sr.name))
for sr in Subreddit.top_lang_srs('all', 10)]
default_traffic = (float(max(sum(default_traffic), 1)) /
max(len(default_traffic), 1))
res = {}
for srname in srnames:
if srname:
res[srname] = (default_traffic /
weigh(PageviewsBySubreddit.history("day", sr.name)))
else:
res[srname] = 1
return res