use /track/video/file to determine if video exists

This commit is contained in:
Peter Rowlands 2016-05-31 17:28:49 +09:00
parent 93fdb14177
commit e7d85c4ef7

View file

@ -11,6 +11,7 @@ from ..compat import (
from ..utils import ( from ..utils import (
ExtractorError, ExtractorError,
int_or_none, int_or_none,
xpath_element,
xpath_text, xpath_text,
) )
@ -84,9 +85,10 @@ class AfreecaTVIE(InfoExtractor):
path='/api/video/get_video_info.php')) path='/api/video/get_video_info.php'))
video_xml = self._download_xml(info_url, video_id) video_xml = self._download_xml(info_url, video_id)
if xpath_text(video_xml, './track/flag', default='FAIL') != 'SUCCEED': if xpath_element(video_xml, './track/video/file') is None:
raise ExtractorError('Specified AfreecaTV video does not exist', raise ExtractorError('Specified AfreecaTV video does not exist',
expected=True) expected=True)
title = xpath_text(video_xml, './track/title', 'title') title = xpath_text(video_xml, './track/title', 'title')
uploader = xpath_text(video_xml, './track/nickname', 'uploader') uploader = xpath_text(video_xml, './track/nickname', 'uploader')
uploader_id = xpath_text(video_xml, './track/bj_id', 'uploader id') uploader_id = xpath_text(video_xml, './track/bj_id', 'uploader id')