aboutsummaryrefslogtreecommitdiffstats
path: root/yt_dlp/extractor/common.py
diff options
context:
space:
mode:
authorpukkandan <pukkandan.ytdlp@gmail.com>2021-08-19 07:11:24 +0530
committerpukkandan <pukkandan.ytdlp@gmail.com>2021-08-23 00:50:40 +0530
commit5ad28e7ffd41deccba33776c1609aa7855601739 (patch)
tree19c70ba4188e9f12815fa086cbdf9025107c2e64 /yt_dlp/extractor/common.py
parentf79ec47d71c3d28e19bc68c1d61ae149e74fae2f (diff)
downloadhypervideo-pre-5ad28e7ffd41deccba33776c1609aa7855601739.tar.lz
hypervideo-pre-5ad28e7ffd41deccba33776c1609aa7855601739.tar.xz
hypervideo-pre-5ad28e7ffd41deccba33776c1609aa7855601739.zip
[extractor] Common function `_match_valid_url`
Diffstat (limited to 'yt_dlp/extractor/common.py')
-rw-r--r--yt_dlp/extractor/common.py17
1 files changed, 8 insertions, 9 deletions
diff --git a/yt_dlp/extractor/common.py b/yt_dlp/extractor/common.py
index 8c2566dc5..31356111b 100644
--- a/yt_dlp/extractor/common.py
+++ b/yt_dlp/extractor/common.py
@@ -447,23 +447,22 @@ class InfoExtractor(object):
self.set_downloader(downloader)
@classmethod
- def suitable(cls, url):
- """Receives a URL and returns True if suitable for this IE."""
-
+ def _match_valid_url(cls, url):
# This does not use has/getattr intentionally - we want to know whether
# we have cached the regexp for *this* class, whereas getattr would also
# match the superclass
if '_VALID_URL_RE' not in cls.__dict__:
cls._VALID_URL_RE = re.compile(cls._VALID_URL)
- return cls._VALID_URL_RE.match(url) is not None
+ return cls._VALID_URL_RE.match(url)
+
+ @classmethod
+ def suitable(cls, url):
+ """Receives a URL and returns True if suitable for this IE."""
+ return cls._match_valid_url(url) is not None
@classmethod
def _match_id(cls, url):
- if '_VALID_URL_RE' not in cls.__dict__:
- cls._VALID_URL_RE = re.compile(cls._VALID_URL)
- m = cls._VALID_URL_RE.match(url)
- assert m
- return compat_str(m.group('id'))
+ return cls._match_valid_url(url).group('id')
@classmethod
def working(cls):