这可能是一个简单的问题,但我无法解决。
我有一个网址:enum
。
我想在网址之间添加"www.example.com/links"
,使其成为:
/skip_session/id=%s/
有人可以帮助我吗?
我尝试使用
www.example.com/skip_session/id=%s/links
但是它会出错
答案 0 :(得分:2)
由于你想在URL的路径部分前缀一个字符串,你可以使用urllib.parse
module (Python 2中的urlparse
)将URL分成第一部分:
try:
# Python 3
from urllib.parse import urlparse
except ImportError:
# Python 2
from urlparse import urlparse
def insert_path_prefix(url, prefix):
parts = urlparse(url)
updated = parts._replace(path=prefix + parts.path)
return updated.geturl()
url = insert_path_prefix(url, '/skip_session/id=%s')
考虑到这确实需要您的网址正确形成(至少以//
开头,最好使用完整格式的方案,如http://
),以便解析正确选择主机名:
>>> insert_path_prefix('http://www.example.com/links', '/skip_session/id=%s')
'http://www.example.com/skip_session/id=%s/links'
如果您的网址在开头缺少//
部分,请先添加一个。
答案 1 :(得分:0)
您可以使用字符串替换或字符串rsplit来执行任务
url_string = "www.example.com/links"
parsed_url = url_string.rsplit("/", 1)
new_url = "/skip_session/id=%s/".join(parsed_url)
或者这个:
url_string = "www.example.com/links"
new_url = url_string.replace("/links", "/skip_session/id=%s/links")