mirror of
				https://gitlab.com/ytdl-org/youtube-dl.git
				synced 2025-11-04 02:07:07 -05:00 
			
		
		
		
	[naver] Fix extraction (closes #16029)
This commit is contained in:
		@@ -1,8 +1,6 @@
 | 
				
			|||||||
# coding: utf-8
 | 
					# coding: utf-8
 | 
				
			||||||
from __future__ import unicode_literals
 | 
					from __future__ import unicode_literals
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import re
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
from .common import InfoExtractor
 | 
					from .common import InfoExtractor
 | 
				
			||||||
from ..utils import (
 | 
					from ..utils import (
 | 
				
			||||||
    ExtractorError,
 | 
					    ExtractorError,
 | 
				
			||||||
@@ -43,9 +41,14 @@ class NaverIE(InfoExtractor):
 | 
				
			|||||||
        video_id = self._match_id(url)
 | 
					        video_id = self._match_id(url)
 | 
				
			||||||
        webpage = self._download_webpage(url, video_id)
 | 
					        webpage = self._download_webpage(url, video_id)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        m_id = re.search(r'var rmcPlayer = new nhn\.rmcnmv\.RMCVideoPlayer\("(.+?)", "(.+?)"',
 | 
					        vid = self._search_regex(
 | 
				
			||||||
                         webpage)
 | 
					            r'videoId["\']\s*:\s*(["\'])(?P<value>(?:(?!\1).)+)\1', webpage,
 | 
				
			||||||
        if m_id is None:
 | 
					            'video id', fatal=None, group='value')
 | 
				
			||||||
 | 
					        in_key = self._search_regex(
 | 
				
			||||||
 | 
					            r'inKey["\']\s*:\s*(["\'])(?P<value>(?:(?!\1).)+)\1', webpage,
 | 
				
			||||||
 | 
					            'key', default=None, group='value')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if not vid or not in_key:
 | 
				
			||||||
            error = self._html_search_regex(
 | 
					            error = self._html_search_regex(
 | 
				
			||||||
                r'(?s)<div class="(?:nation_error|nation_box|error_box)">\s*(?:<!--.*?-->)?\s*<p class="[^"]+">(?P<msg>.+?)</p>\s*</div>',
 | 
					                r'(?s)<div class="(?:nation_error|nation_box|error_box)">\s*(?:<!--.*?-->)?\s*<p class="[^"]+">(?P<msg>.+?)</p>\s*</div>',
 | 
				
			||||||
                webpage, 'error', default=None)
 | 
					                webpage, 'error', default=None)
 | 
				
			||||||
@@ -53,9 +56,9 @@ class NaverIE(InfoExtractor):
 | 
				
			|||||||
                raise ExtractorError(error, expected=True)
 | 
					                raise ExtractorError(error, expected=True)
 | 
				
			||||||
            raise ExtractorError('couldn\'t extract vid and key')
 | 
					            raise ExtractorError('couldn\'t extract vid and key')
 | 
				
			||||||
        video_data = self._download_json(
 | 
					        video_data = self._download_json(
 | 
				
			||||||
            'http://play.rmcnmv.naver.com/vod/play/v2.0/' + m_id.group(1),
 | 
					            'http://play.rmcnmv.naver.com/vod/play/v2.0/' + vid,
 | 
				
			||||||
            video_id, query={
 | 
					            video_id, query={
 | 
				
			||||||
                'key': m_id.group(2),
 | 
					                'key': in_key,
 | 
				
			||||||
            })
 | 
					            })
 | 
				
			||||||
        meta = video_data['meta']
 | 
					        meta = video_data['meta']
 | 
				
			||||||
        title = meta['subject']
 | 
					        title = meta['subject']
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user