]>
Raphaƫl G. Git Repositories - youtubedl/blob - youtube_dl/extractor/franceinter.py
   2 from __future__ 
import unicode_literals
 
   4 from .common 
import InfoExtractor
 
   5 from ..utils 
import month_by_name
 
   8 class FranceInterIE(InfoExtractor
): 
   9     _VALID_URL 
= r
'https?://(?:www\.)?franceinter\.fr/emissions/(?P<id>[^?#]+)' 
  12         'url': 'https://www.franceinter.fr/emissions/affaires-sensibles/affaires-sensibles-07-septembre-2016', 
  13         'md5': '9e54d7bdb6fdc02a841007f8a975c094', 
  15             'id': 'affaires-sensibles/affaires-sensibles-07-septembre-2016', 
  17             'title': 'Affaire Cahuzac : le contentieux du compte en Suisse', 
  18             'description': 'md5:401969c5d318c061f86bda1fa359292b', 
  19             'upload_date': '20160907', 
  23     def _real_extract(self
, url
): 
  24         video_id 
= self
._match
_id
(url
) 
  26         webpage 
= self
._download
_webpage
(url
, video_id
) 
  28         video_url 
= self
._search
_regex
( 
  29             r
'(?s)<div[^>]+class=["\']page
-diffusion
["\'][^>]*>.*?<button[^>]+data-url=(["\'])(?P
<url
>(?
:(?
!\
1).)+)\
1', 
  30             webpage, 'video url
', group='url
') 
  32         title = self._og_search_title(webpage) 
  33         description = self._og_search_description(webpage) 
  35         upload_date_str = self._search_regex( 
  36             r'class=["\']cover-emission-period["\'][^
>]*>[^
<]+\s
+(\d
{1,2}\s
+[^\s
]+\s
+\d{4}
)<', 
  37             webpage, 'upload date
', fatal=False) 
  39             upload_date_list = upload_date_str.split() 
  40             upload_date_list.reverse() 
  41             upload_date_list[1] = '%02d
' % (month_by_name(upload_date_list[1], lang='fr
') or 0) 
  42             upload_date_list[2] = '%02d
' % int(upload_date_list[2]) 
  43             upload_date = ''.join(upload_date_list) 
  50             'description
': description, 
  51             'upload_date
': upload_date,