mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-31 14:45:14 +00:00 
			
		
		
		
	| @@ -536,7 +536,7 @@ class VKIE(VKBaseIE): | |||||||
| class VKUserVideosIE(VKBaseIE): | class VKUserVideosIE(VKBaseIE): | ||||||
|     IE_NAME = 'vk:uservideos' |     IE_NAME = 'vk:uservideos' | ||||||
|     IE_DESC = "VK - User's Videos" |     IE_DESC = "VK - User's Videos" | ||||||
|     _VALID_URL = r'https?://(?:(?:m|new)\.)?vk\.com/video/@(?P<id>[^?$#/&]+)(?!\?.*\bz=video)(?:[/?#&](?:.*?\bsection=(?P<section>\w+))?|$)' |     _VALID_URL = r'https?://(?:(?:m|new)\.)?vk\.com/video/(?:playlist/)?(?P<id>[^?$#/&]+)(?!\?.*\bz=video)(?:[/?#&](?:.*?\bsection=(?P<section>\w+))?|$)' | ||||||
|     _TEMPLATE_URL = 'https://vk.com/videos' |     _TEMPLATE_URL = 'https://vk.com/videos' | ||||||
|     _TESTS = [{ |     _TESTS = [{ | ||||||
|         'url': 'https://vk.com/video/@mobidevices', |         'url': 'https://vk.com/video/@mobidevices', | ||||||
| @@ -550,6 +550,13 @@ class VKUserVideosIE(VKBaseIE): | |||||||
|             'id': '-17892518_uploaded', |             'id': '-17892518_uploaded', | ||||||
|         }, |         }, | ||||||
|         'playlist_mincount': 182, |         'playlist_mincount': 182, | ||||||
|  |     }, { | ||||||
|  |         'url': 'https://vk.com/video/playlist/-174476437_2', | ||||||
|  |         'info_dict': { | ||||||
|  |             'id': '-174476437_2', | ||||||
|  |             'title': 'Анонсы' | ||||||
|  |         }, | ||||||
|  |         'playlist_mincount': 108, | ||||||
|     }] |     }] | ||||||
|     _VIDEO = collections.namedtuple('Video', ['owner_id', 'id']) |     _VIDEO = collections.namedtuple('Video', ['owner_id', 'id']) | ||||||
| 
 | 
 | ||||||
| @@ -584,11 +591,19 @@ class VKUserVideosIE(VKBaseIE): | |||||||
|     def _real_extract(self, url): |     def _real_extract(self, url): | ||||||
|         u_id, section = self._match_valid_url(url).groups() |         u_id, section = self._match_valid_url(url).groups() | ||||||
|         webpage = self._download_webpage(url, u_id) |         webpage = self._download_webpage(url, u_id) | ||||||
|         page_id = self._search_regex(r'data-owner-id\s?=\s?"([^"]+)"', webpage, 'page_id') | 
 | ||||||
|  |         if u_id.startswith('@'): | ||||||
|  |             page_id = self._search_regex(r'data-owner-id\s?=\s?"([^"]+)"', webpage, 'page_id') | ||||||
|  |         elif '_' in u_id: | ||||||
|  |             page_id, section = u_id.split('_', 1) | ||||||
|  |         else: | ||||||
|  |             raise ExtractorError('Invalid URL', expected=True) | ||||||
|  | 
 | ||||||
|         if not section: |         if not section: | ||||||
|             section = 'all' |             section = 'all' | ||||||
| 
 | 
 | ||||||
|         return self.playlist_result(self._entries(page_id, section), '%s_%s' % (page_id, section)) |         playlist_title = clean_html(get_element_by_class('VideoInfoPanel__title', webpage)) | ||||||
|  |         return self.playlist_result(self._entries(page_id, section), '%s_%s' % (page_id, section), playlist_title) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| class VKWallPostIE(VKBaseIE): | class VKWallPostIE(VKBaseIE): | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Marenga
					Marenga