urllib.parse.urljoin(base, url, allow_fragments=True)
Construct a full (“absolute”) URL by combining a “base URL” (base) with another URL (url). Informally, this uses components of the base URL, in particular the addressing scheme, the network location and (part of) the path, to provide missing components in the relative URL. For example:
>>> from urllib.parse import urljoin >>> urljoin('http://www.cwi.nl/%7Eguido/Python.html', 'FAQ.html') 'http://www.cwi.nl/%7Eguido/FAQ.html'
The allow_fragments argument has the same meaning and default as for urlparse()
.
Note
If url is an absolute URL (that is, starting with //
or scheme://
), the url‘s host name and/or scheme will be present in the result. For example:
>>> urljoin('http://www.cwi.nl/%7Eguido/Python.html', ... '//www.python.org/%7Eguido') 'http://www.python.org/%7Eguido'
If you do not want that behavior, preprocess the url with urlsplit()
and urlunsplit()
, removing possible scheme and netloc parts.
Changed in version 3.5: Behaviour updated to match the semantics defined in RFC 3986.
Please login to continue.