📅  最后修改于: 2020-11-06 06:31:00             🧑  作者: Mango
请求模块可以帮助我们构建URLS并动态处理URL值。可以以编程方式获取URL的任何子目录,然后可以用新值替换其中的一部分以构建新的URL。
下面的示例使用urljoin在URL路径中获取不同的子文件夹。 urljoin方法用于将新值添加到基本URL。
from requests.compat import urljoin
base='https://stackoverflow.com/questions/3764291'
print urljoin(base,'.')
print urljoin(base,'..')
print urljoin(base,'...')
print urljoin(base,'/3764299/')
url_query = urljoin(base,'?vers=1.0')
print url_query
url_sec = urljoin(url_query,'#section-5.4')
print url_sec
当我们运行上面的程序时,我们得到以下输出-
https://stackoverflow.com/questions/
https://stackoverflow.com/
https://stackoverflow.com/questions/...
https://stackoverflow.com/3764299/
https://stackoverflow.com/questions/3764291?vers=1.0
https://stackoverflow.com/questions/3764291?vers=1.0#section-5.4
URL也可以分为主要地址以外的许多部分。如下所示,使用urlparse方法分隔用于特定查询的附加参数或附加到URL的标记。
from requests.compat import urlparse
url1 = 'https://docs.python.org/2/py-modindex.html#cap-f'
url2='https://docs.python.org/2/search.html?q=urlparse'
print urlparse(url1)
print urlparse(url2)
当我们运行上面的程序时,我们得到以下输出-
ParseResult(scheme='https', netloc='docs.python.org', path='/2/py-modindex.html', params='', query='', fragment='cap-f')
ParseResult(scheme='https', netloc='docs.python.org', path='/2/search.html', params='', query='q=urlparse', fragment='')