projects
/
youtube-dl
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
a9ee4f6
)
[arte] Capture and output error message
author
Sergey M․
<dstftw@gmail.com>
Sun, 15 Oct 2017 15:12:34 +0000
(22:12 +0700)
committer
Sergey M․
<dstftw@gmail.com>
Sun, 15 Oct 2017 15:12:34 +0000
(22:12 +0700)
youtube_dl/extractor/arte.py
patch
|
blob
|
history
diff --git
a/youtube_dl/extractor/arte.py
b/youtube_dl/extractor/arte.py
index 5cde90c5b23d1f92a7709c766102bb298e63cadb..ffc321821cd3a4a0ba9a62ad97b6f443d8ecacb3 100644
(file)
--- a/
youtube_dl/extractor/arte.py
+++ b/
youtube_dl/extractor/arte.py
@@
-6,6
+6,7
@@
import re
from .common import InfoExtractor
from ..compat import (
compat_parse_qs,
from .common import InfoExtractor
from ..compat import (
compat_parse_qs,
+ compat_str,
compat_urllib_parse_urlparse,
)
from ..utils import (
compat_urllib_parse_urlparse,
)
from ..utils import (
@@
-15,6
+16,7
@@
from ..utils import (
int_or_none,
NO_DEFAULT,
qualities,
int_or_none,
NO_DEFAULT,
qualities,
+ try_get,
unified_strdate,
)
unified_strdate,
)
@@
-80,12
+82,15
@@
class ArteTVBaseIE(InfoExtractor):
info = self._download_json(json_url, video_id)
player_info = info['videoJsonPlayer']
info = self._download_json(json_url, video_id)
player_info = info['videoJsonPlayer']
- vsr = player_info['VSR']
-
+ vsr = try_get(player_info, lambda x: x['VSR'], dict)
if not vsr:
if not vsr:
- raise ExtractorError(
- 'Video %s is not available' % player_info.get('VID') or video_id,
- expected=True)
+ error = None
+ if try_get(player_info, lambda x: x['custom_msg']['type']) == 'error':
+ error = try_get(
+ player_info, lambda x: x['custom_msg']['msg'], compat_str)
+ if not error:
+ error = 'Video %s is not available' % player_info.get('VID') or video_id
+ raise ExtractorError(error, expected=True)
upload_date_str = player_info.get('shootingDate')
if not upload_date_str:
upload_date_str = player_info.get('shootingDate')
if not upload_date_str: