mirror of
				https://gitlab.com/ytdl-org/youtube-dl.git
				synced 2025-10-31 15:52:22 -04:00 
			
		
		
		
	[vimeo] Extract license (closes #11880)
This commit is contained in:
		| @@ -218,6 +218,7 @@ class VimeoIE(VimeoBaseInfoExtractor): | ||||
|                 'uploader_id': 'user7108434', | ||||
|                 'uploader': 'Filippo Valsorda', | ||||
|                 'duration': 10, | ||||
|                 'license': 'by-sa', | ||||
|             }, | ||||
|         }, | ||||
|         { | ||||
| @@ -486,6 +487,8 @@ class VimeoIE(VimeoBaseInfoExtractor): | ||||
|                     '%s said: %s' % (self.IE_NAME, seed_status['title']), | ||||
|                     expected=True) | ||||
|  | ||||
|         cc_license = None | ||||
|  | ||||
|         # Extract the config JSON | ||||
|         try: | ||||
|             try: | ||||
| @@ -499,8 +502,9 @@ class VimeoIE(VimeoBaseInfoExtractor): | ||||
|                     vimeo_clip_page_config = self._search_regex( | ||||
|                         r'vimeo\.clip_page_config\s*=\s*({.+?});', webpage, | ||||
|                         'vimeo clip page config') | ||||
|                     config_url = self._parse_json( | ||||
|                         vimeo_clip_page_config, video_id)['player']['config_url'] | ||||
|                     page_config = self._parse_json(vimeo_clip_page_config, video_id) | ||||
|                     config_url = page_config['player']['config_url'] | ||||
|                     cc_license = page_config.get('cc_license') | ||||
|                 config_json = self._download_webpage(config_url, video_id) | ||||
|                 config = json.loads(config_json) | ||||
|             except RegexNotFoundError: | ||||
| @@ -609,6 +613,12 @@ class VimeoIE(VimeoBaseInfoExtractor): | ||||
|         info_dict = self._parse_config(config, video_id) | ||||
|         formats.extend(info_dict['formats']) | ||||
|         self._vimeo_sort_formats(formats) | ||||
|  | ||||
|         if not cc_license: | ||||
|             cc_license = self._search_regex( | ||||
|                 r'<link[^>]+rel=["\']license["\'][^>]+href=(["\'])(?P<license>(?:(?!\1).)+)\1', | ||||
|                 webpage, 'license', default=None, group='license') | ||||
|  | ||||
|         info_dict.update({ | ||||
|             'id': video_id, | ||||
|             'formats': formats, | ||||
| @@ -618,6 +628,7 @@ class VimeoIE(VimeoBaseInfoExtractor): | ||||
|             'view_count': view_count, | ||||
|             'like_count': like_count, | ||||
|             'comment_count': comment_count, | ||||
|             'license': cc_license, | ||||
|         }) | ||||
|  | ||||
|         return info_dict | ||||
|   | ||||
		Reference in New Issue
	
	Block a user