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