diff options
Diffstat (limited to 'hypervideo_dl/extractor/jwplatform.py')
-rw-r--r-- | hypervideo_dl/extractor/jwplatform.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/hypervideo_dl/extractor/jwplatform.py b/hypervideo_dl/extractor/jwplatform.py index c34b5f5..5aa508b 100644 --- a/hypervideo_dl/extractor/jwplatform.py +++ b/hypervideo_dl/extractor/jwplatform.py @@ -32,9 +32,14 @@ class JWPlatformIE(InfoExtractor): @staticmethod def _extract_urls(webpage): - return re.findall( - r'<(?:script|iframe)[^>]+?src=["\']((?:https?:)?//(?:content\.jwplatform|cdn\.jwplayer)\.com/players/[a-zA-Z0-9]{8})', - webpage) + for tag, key in ((r'(?:script|iframe)', 'src'), ('input', 'value')): + # <input value=URL> is used by hyland.com + # if we find <iframe>, dont look for <input> + ret = re.findall( + r'<%s[^>]+?%s=["\']((?:https?:)?//(?:content\.jwplatform|cdn\.jwplayer)\.com/players/[a-zA-Z0-9]{8})' % (tag, key), + webpage) + if ret: + return ret def _real_extract(self, url): url, smuggled_data = unsmuggle_url(url, {}) |