[afreecatv] remove AfreecaTVGlobalIE
the website now show this message > Global AfreecaTV will be merged and integrated on July 20th, 2017. Every user around the world are now able to interact with one another on www.afreecatv.com!
This commit is contained in:
		@@ -271,107 +271,3 @@ class AfreecaTVIE(InfoExtractor):
 | 
			
		||||
            })
 | 
			
		||||
 | 
			
		||||
        return info
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class AfreecaTVGlobalIE(AfreecaTVIE):
 | 
			
		||||
    IE_NAME = 'afreecatv:global'
 | 
			
		||||
    _VALID_URL = r'https?://(?:www\.)?afreeca\.tv/(?P<channel_id>\d+)(?:/v/(?P<video_id>\d+))?'
 | 
			
		||||
    _TESTS = [{
 | 
			
		||||
        'url': 'http://afreeca.tv/36853014/v/58301',
 | 
			
		||||
        'info_dict': {
 | 
			
		||||
            'id': '58301',
 | 
			
		||||
            'title': 'tryhard top100',
 | 
			
		||||
            'uploader_id': '36853014',
 | 
			
		||||
            'uploader': 'makgi Hearthstone Live!',
 | 
			
		||||
        },
 | 
			
		||||
        'playlist_count': 3,
 | 
			
		||||
    }]
 | 
			
		||||
 | 
			
		||||
    def _real_extract(self, url):
 | 
			
		||||
        channel_id, video_id = re.match(self._VALID_URL, url).groups()
 | 
			
		||||
        video_type = 'video' if video_id else 'live'
 | 
			
		||||
        query = {
 | 
			
		||||
            'pt': 'view',
 | 
			
		||||
            'bid': channel_id,
 | 
			
		||||
        }
 | 
			
		||||
        if video_id:
 | 
			
		||||
            query['vno'] = video_id
 | 
			
		||||
        video_data = self._download_json(
 | 
			
		||||
            'http://api.afreeca.tv/%s/view_%s.php' % (video_type, video_type),
 | 
			
		||||
            video_id or channel_id, query=query)['channel']
 | 
			
		||||
 | 
			
		||||
        if video_data.get('result') != 1:
 | 
			
		||||
            raise ExtractorError('%s said: %s' % (self.IE_NAME, video_data['remsg']))
 | 
			
		||||
 | 
			
		||||
        title = video_data['title']
 | 
			
		||||
 | 
			
		||||
        info = {
 | 
			
		||||
            'thumbnail': video_data.get('thumb'),
 | 
			
		||||
            'view_count': int_or_none(video_data.get('vcnt')),
 | 
			
		||||
            'age_limit': int_or_none(video_data.get('grade')),
 | 
			
		||||
            'uploader_id': channel_id,
 | 
			
		||||
            'uploader': video_data.get('cname'),
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if video_id:
 | 
			
		||||
            entries = []
 | 
			
		||||
            for i, f in enumerate(video_data.get('flist', [])):
 | 
			
		||||
                video_key = self.parse_video_key(f.get('key', ''))
 | 
			
		||||
                f_url = f.get('file')
 | 
			
		||||
                if not video_key or not f_url:
 | 
			
		||||
                    continue
 | 
			
		||||
                entries.append({
 | 
			
		||||
                    'id': '%s_%s' % (video_id, video_key.get('part', i + 1)),
 | 
			
		||||
                    'title': title,
 | 
			
		||||
                    'upload_date': video_key.get('upload_date'),
 | 
			
		||||
                    'duration': int_or_none(f.get('length')),
 | 
			
		||||
                    'url': f_url,
 | 
			
		||||
                    'protocol': 'm3u8_native',
 | 
			
		||||
                    'ext': 'mp4',
 | 
			
		||||
                })
 | 
			
		||||
 | 
			
		||||
            info.update({
 | 
			
		||||
                'id': video_id,
 | 
			
		||||
                'title': title,
 | 
			
		||||
                'duration': int_or_none(video_data.get('length')),
 | 
			
		||||
            })
 | 
			
		||||
            if len(entries) > 1:
 | 
			
		||||
                info['_type'] = 'multi_video'
 | 
			
		||||
                info['entries'] = entries
 | 
			
		||||
            elif len(entries) == 1:
 | 
			
		||||
                i = entries[0].copy()
 | 
			
		||||
                i.update(info)
 | 
			
		||||
                info = i
 | 
			
		||||
        else:
 | 
			
		||||
            formats = []
 | 
			
		||||
            for s in video_data.get('strm', []):
 | 
			
		||||
                s_url = s.get('purl')
 | 
			
		||||
                if not s_url:
 | 
			
		||||
                    continue
 | 
			
		||||
                stype = s.get('stype')
 | 
			
		||||
                if stype == 'HLS':
 | 
			
		||||
                    formats.extend(self._extract_m3u8_formats(
 | 
			
		||||
                        s_url, channel_id, 'mp4', m3u8_id=stype, fatal=False))
 | 
			
		||||
                elif stype == 'RTMP':
 | 
			
		||||
                    format_id = [stype]
 | 
			
		||||
                    label = s.get('label')
 | 
			
		||||
                    if label:
 | 
			
		||||
                        format_id.append(label)
 | 
			
		||||
                    formats.append({
 | 
			
		||||
                        'format_id': '-'.join(format_id),
 | 
			
		||||
                        'url': s_url,
 | 
			
		||||
                        'tbr': int_or_none(s.get('bps')),
 | 
			
		||||
                        'height': int_or_none(s.get('brt')),
 | 
			
		||||
                        'ext': 'flv',
 | 
			
		||||
                        'rtmp_live': True,
 | 
			
		||||
                    })
 | 
			
		||||
            self._sort_formats(formats)
 | 
			
		||||
 | 
			
		||||
            info.update({
 | 
			
		||||
                'id': channel_id,
 | 
			
		||||
                'title': self._live_title(title),
 | 
			
		||||
                'is_live': True,
 | 
			
		||||
                'formats': formats,
 | 
			
		||||
            })
 | 
			
		||||
 | 
			
		||||
        return info
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user