]>
jfr.im git - yt-dlp.git/blob - yt_dlp/extractor/ukcolumn.py
1 from __future__
import unicode_literals
8 from .common
import InfoExtractor
9 from .vimeo
import VimeoIE
10 from .youtube
import YoutubeIE
13 class UkColumnIE(InfoExtractor
):
15 _VALID_URL
= r
'(?i)https?://(?:www\.)?ukcolumn\.org(/index\.php)?/(?:video|ukcolumn-news)/(?P<id>[-a-z0-9]+)'
18 'url': 'https://www.ukcolumn.org/ukcolumn-news/uk-column-news-28th-april-2021',
22 'title': 'UK Column News - 28th April 2021',
23 'uploader_id': 'ukcolumn',
24 'uploader': 'UK Column',
26 'add_ie': [VimeoIE
.ie_key()],
27 'expected_warnings': ['Unable to download JSON metadata'],
29 'skip_download': 'Handled by Vimeo',
32 'url': 'https://www.ukcolumn.org/video/insight-eu-military-unification',
36 'title': 'Insight: EU Military Unification',
37 'uploader_id': 'ukcolumn',
38 'description': 'md5:29a207965271af89baa0bc191f5de576',
39 'uploader': 'UK Column',
40 'upload_date': '20170514',
42 'add_ie': [YoutubeIE
.ie_key()],
44 'skip_download': 'Handled by Youtube',
47 'url': 'https://www.ukcolumn.org/index.php/ukcolumn-news/uk-column-news-30th-april-2021',
48 'only_matching': True,
51 def _real_extract(self
, url
):
52 display_id
= self
._match
_id
(url
)
53 webpage
= self
._download
_webpage
(url
, display_id
)
55 oembed_url
= urljoin(url
, unescapeHTML(self
._search
_regex
(
56 r
'<iframe[^>]+src=(["\'])(?P
<url
>/media
/oembed
\?url
=.+?
)\
1',
57 webpage, 'OEmbed URL
', group='url
')))
58 oembed_webpage = self._download_webpage(
59 oembed_url, display_id, note='Downloading OEmbed page
')
61 ie, video_url = YoutubeIE, YoutubeIE._extract_url(oembed_webpage)
63 ie, video_url = VimeoIE, VimeoIE._extract_url(url, oembed_webpage)
65 raise ExtractorError('No embedded video found
')
68 '_type
': 'url_transparent
',
69 'title
': self._og_search_title(webpage),
71 'ie_key
': ie.ie_key(),