本文整理汇总了Python中r2.lib.utils.UrlParser.path_add_subdigg方法的典型用法代码示例。如果您正苦于以下问题:Python UrlParser.path_add_subdigg方法的具体用法?Python UrlParser.path_add_subdigg怎么用?Python UrlParser.path_add_subdigg使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类r2.lib.utils.UrlParser
的用法示例。
在下文中一共展示了UrlParser.path_add_subdigg方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: add_sr
# 需要导入模块: from r2.lib.utils import UrlParser [as 别名]
# 或者: from r2.lib.utils.UrlParser import path_add_subdigg [as 别名]
def add_sr(path, sr_path = True, nocname=False, force_hostname = False):
"""
Given a path (which may be a full-fledged url or a relative path),
parses the path and updates it to include the subdigg path
according to the rules set by its arguments:
* force_hostname: if True, force the url's hotname to be updated
even if it is already set in the path, and subject to the
c.cname/nocname combination. If false, the path will still
have its domain updated if no hostname is specified in the url.
* nocname: when updating the hostname, overrides the value of
c.cname to set the hotname to g.domain. The default behavior
is to set the hostname consistent with c.cname.
* sr_path: if a cname is not used for the domain, updates the
path to include c.site.path.
For caching purposes: note that this function uses:
c.cname, c.render_style, c.site.name
"""
# don't do anything if it is just an anchor
if path.startswith('#') or path.startswith('javascript:'):
return path
u = UrlParser(path)
if sr_path and (nocname or not c.cname):
u.path_add_subdigg(c.site)
if not u.hostname or force_hostname:
u.hostname = get_domain(cname = (c.cname and not nocname),
subdigg = False)
if c.render_style == 'mobile':
u.set_extension('mobile')
return u.unparse()