diff options
author | Sergey M․ <dstftw@gmail.com> | 2016-07-28 22:15:15 +0700 |
---|---|---|
committer | Sergey M․ <dstftw@gmail.com> | 2016-07-28 22:15:15 +0700 |
commit | 94aae015485801ff1edc3689a11f8866b077ce47 (patch) | |
tree | 02ab64edf6bd66456c5c58b26fd1381af745e5bf | |
parent | 39eef54cf01a9017da0ea83618978293f19841bb (diff) |
[extractor/generic] Extract all soundcloud embeds (Closes #10179)
-rw-r--r-- | youtube_dl/extractor/generic.py | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/youtube_dl/extractor/generic.py b/youtube_dl/extractor/generic.py index 98dd6a7e3..6c4af6424 100644 --- a/youtube_dl/extractor/generic.py +++ b/youtube_dl/extractor/generic.py @@ -71,6 +71,7 @@ from .vessel import VesselIE from .kaltura import KalturaIE from .eagleplatform import EaglePlatformIE from .facebook import FacebookIE +from .soundcloud import SoundcloudIE class GenericIE(InfoExtractor): @@ -1999,12 +2000,9 @@ class GenericIE(InfoExtractor): return self.url_result(myvi_url) # Look for embedded soundcloud player - mobj = re.search( - r'<iframe\s+(?:[a-zA-Z0-9_-]+="[^"]+"\s+)*src="(?P<url>https?://(?:w\.)?soundcloud\.com/player[^"]+)"', - webpage) - if mobj is not None: - url = unescapeHTML(mobj.group('url')) - return self.url_result(url) + soundcloud_urls = SoundcloudIE._extract_urls(webpage) + if soundcloud_urls: + return _playlist_from_matches(soundcloud_urls, getter=unescapeHTML, ie=SoundcloudIE.ie_key()) # Look for embedded mtvservices player mtvservices_url = MTVServicesEmbeddedIE._extract_url(webpage) |