[voewster] Detect series geo restriction

This commit is contained in:
Sergey M․ 2015-09-22 21:52:41 +06:00
parent c430802e32
commit cccedc1aa4

View File

@ -3,12 +3,14 @@
from .common import InfoExtractor from .common import InfoExtractor
from ..compat import ( from ..compat import (
compat_HTTPError,
compat_urllib_request, compat_urllib_request,
compat_urllib_parse, compat_urllib_parse,
compat_urllib_parse_unquote, compat_urllib_parse_unquote,
) )
from ..utils import ( from ..utils import (
determine_ext, determine_ext,
ExtractorError,
int_or_none, int_or_none,
parse_iso8601, parse_iso8601,
HEADRequest, HEADRequest,
@ -86,9 +88,15 @@ def _real_extract(self, url):
# unfinished serie has no Type # unfinished serie has no Type
if info.get('Type') in ['Serie', None]: if info.get('Type') in ['Serie', None]:
episodes = self._download_json( try:
'https://public-api.viewster.com/series/%s/episodes' % entry_id, episodes = self._download_json(
video_id, 'Downloading series JSON') 'https://public-api.viewster.com/series/%s/episodes' % entry_id,
video_id, 'Downloading series JSON')
except ExtractorError as e:
if isinstance(e.cause, compat_HTTPError) and e.cause.code == 404:
self.raise_geo_restricted()
else:
raise
entries = [ entries = [
self.url_result( self.url_result(
'http://www.viewster.com/movie/%s' % episode['OriginId'], 'Viewster') 'http://www.viewster.com/movie/%s' % episode['OriginId'], 'Viewster')