]>
jfr.im git - yt-dlp.git/blob - yt_dlp/extractor/cgtn.py
2 from __future__
import unicode_literals
4 from . common
import InfoExtractor
11 class CGTNIE ( InfoExtractor
):
12 _VALID_URL
= r
'https?://news\.cgtn\.com/news/[0-9] {4} -[0-9] {2} -[0-9] {2} /[a-zA-Z0-9-]+-(?P<id>[a-zA-Z0-9-]+)/index\.html'
15 'url' : 'https://news.cgtn.com/news/2021-03-09/Up-and-Out-of-Poverty-Ep-1-A-solemn-promise-YuOUaOzGQU/index.html' ,
19 'title' : 'Up and Out of Poverty Ep. 1: A solemn promise' ,
20 'thumbnail' : r
're:^https?://.*\.jpg$' ,
21 'timestamp' : 1615295940 ,
22 'upload_date' : '20210309' ,
28 'url' : 'https://news.cgtn.com/news/2021-06-06/China-Indonesia-vow-to-further-deepen-maritime-cooperation-10REvJCewCY/index.html' ,
32 'title' : 'China, Indonesia vow to further deepen maritime cooperation' ,
33 'thumbnail' : r
're:^https?://.*\.png$' ,
34 'description' : 'China and Indonesia vowed to upgrade their cooperation into the maritime sector and also for political security, economy, and cultural and people-to-people exchanges.' ,
37 'timestamp' : 1622950200 ,
38 'upload_date' : '20210606' ,
41 'skip_download' : False
46 def _real_extract ( self
, url
):
47 video_id
= self
._ match
_ id
( url
)
48 webpage
= self
._ download
_ webpage
( url
, video_id
)
50 download_url
= self
._ html
_ search
_ regex
( r
'data-video ="(?P<url>.+m3u8)"' , webpage
, 'download_url' )
51 datetime_str
= self
._ html
_ search
_ regex
( r
'<span class="date">\s*(.+?)\s*</span>' , webpage
, 'datetime_str' , fatal
= False )
55 'title' : self
._ og
_ search
_ title
( webpage
),
56 'description' : self
._ og
_ search
_ description
( webpage
, default
= None ),
57 'thumbnail' : self
._ og
_ search
_ thumbnail
( webpage
),
58 'formats' : self
._ extract
_ m
3u8_ formats
( download_url
, video_id
, 'mp4' , 'm3u8_native' , m3u8_id
= 'hls' ),
59 'category' : self
._ html
_ search
_ regex
( r
'<span class="section">\s*(.+?)\s*</span>' ,
60 webpage
, 'category' , fatal
= False ),
61 'author' : self
._ html
_ search
_ regex
( r
'<div class="news-author-name">\s*(.+?)\s*</div>' ,
62 webpage
, 'author' , default
= None , fatal
= False ),
63 'timestamp' : try_get ( unified_timestamp ( datetime_str
), lambda x
: x
- 8 * 3600 ),