aboutsummaryrefslogtreecommitdiff
path: root/youtube_dl/utils.py
diff options
context:
space:
mode:
authorSergey M․ <dstftw@gmail.com>2016-12-13 02:23:49 +0700
committerSergey M․ <dstftw@gmail.com>2016-12-13 02:23:49 +0700
commite34c33614d8e4f0208d96d71e9c0ac6571587555 (patch)
treeb4fa55c176f9bf23276b6e94a3fcfc80b02bc167 /youtube_dl/utils.py
parentabf3494ac7b78498d8f95c92548e857b7673c7de (diff)
downloadyoutube-dl-e34c33614d8e4f0208d96d71e9c0ac6571587555.tar.xz
[utils] Add convenience urljoin
Diffstat (limited to 'youtube_dl/utils.py')
-rw-r--r--youtube_dl/utils.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/youtube_dl/utils.py b/youtube_dl/utils.py
index 3d4951ad9..694e9a600 100644
--- a/youtube_dl/utils.py
+++ b/youtube_dl/utils.py
@@ -1700,6 +1700,16 @@ def base_url(url):
return re.match(r'https?://[^?#&]+/', url).group()
+def urljoin(base, path):
+ if not isinstance(path, compat_str) or not path:
+ return None
+ if re.match(r'https?://', path):
+ return path
+ if not isinstance(base, compat_str) or not re.match(r'https?://', base):
+ return None
+ return compat_urlparse.urljoin(base, path)
+
+
class HEADRequest(compat_urllib_request.Request):
def get_method(self):
return 'HEAD'