[generic] Add support for channel9 embeds (closes #14469)
parent
5fe75f976f
commit
26bae2d965
|
@ -81,6 +81,12 @@ class Channel9IE(InfoExtractor):
|
||||||
|
|
||||||
_RSS_URL = 'http://channel9.msdn.com/%s/RSS'
|
_RSS_URL = 'http://channel9.msdn.com/%s/RSS'
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def _extract_urls(webpage):
|
||||||
|
return re.findall(
|
||||||
|
r'<iframe[^>]+src=["\'](https?://channel9\.msdn\.com/(?:[^/]+/)+)player\b',
|
||||||
|
webpage)
|
||||||
|
|
||||||
def _extract_list(self, video_id, rss_url=None):
|
def _extract_list(self, video_id, rss_url=None):
|
||||||
if not rss_url:
|
if not rss_url:
|
||||||
rss_url = self._RSS_URL % video_id
|
rss_url = self._RSS_URL % video_id
|
||||||
|
|
|
@ -101,6 +101,7 @@ from .mediaset import MediasetIE
|
||||||
from .joj import JojIE
|
from .joj import JojIE
|
||||||
from .megaphone import MegaphoneIE
|
from .megaphone import MegaphoneIE
|
||||||
from .vzaar import VzaarIE
|
from .vzaar import VzaarIE
|
||||||
|
from .channel9 import Channel9IE
|
||||||
|
|
||||||
|
|
||||||
class GenericIE(InfoExtractor):
|
class GenericIE(InfoExtractor):
|
||||||
|
@ -2871,6 +2872,11 @@ class GenericIE(InfoExtractor):
|
||||||
return self.playlist_from_matches(
|
return self.playlist_from_matches(
|
||||||
vzaar_urls, video_id, video_title, ie=VzaarIE.ie_key())
|
vzaar_urls, video_id, video_title, ie=VzaarIE.ie_key())
|
||||||
|
|
||||||
|
channel9_urls = Channel9IE._extract_urls(webpage)
|
||||||
|
if channel9_urls:
|
||||||
|
return self.playlist_from_matches(
|
||||||
|
channel9_urls, video_id, video_title, ie=Channel9IE.ie_key())
|
||||||
|
|
||||||
def merge_dicts(dict1, dict2):
|
def merge_dicts(dict1, dict2):
|
||||||
merged = {}
|
merged = {}
|
||||||
for k, v in dict1.items():
|
for k, v in dict1.items():
|
||||||
|
|
Loading…
Reference in New Issue