aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com>2013-10-27 12:09:46 +0100
committerJaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com>2013-10-27 12:09:46 +0100
commit6f71ef580c0d93947817c81a09f6a188631585a1 (patch)
tree337e951d5c76412221c61c19014fa25361583b4d
parent67874aeffa37a114b01fe6be11d156b7ece584b2 (diff)
downloadyoutube-dl-6f71ef580c0d93947817c81a09f6a188631585a1.tar.xz
[facebook] Report a more meaningful message if the video cannot be accessed (closes #1658)
-rw-r--r--youtube_dl/extractor/facebook.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/youtube_dl/extractor/facebook.py b/youtube_dl/extractor/facebook.py
index 62881da31..aa2525f17 100644
--- a/youtube_dl/extractor/facebook.py
+++ b/youtube_dl/extractor/facebook.py
@@ -100,7 +100,12 @@ class FacebookIE(InfoExtractor):
AFTER = '.forEach(function(variable) {swf.addVariable(variable[0], variable[1]);});'
m = re.search(re.escape(BEFORE) + '(.*?)' + re.escape(AFTER), webpage)
if not m:
- raise ExtractorError(u'Cannot parse data')
+ m_msg = re.search(r'class="[^"]*uiInterstitialContent[^"]*"><div>(.*?)</div>', webpage)
+ if m_msg is not None:
+ err_msg = u'The video is not available, Facebook said: "%s"' % m_msg.group(1)
+ else:
+ err_msg = u'Cannot parse data'
+ raise ExtractorError(err_msg)
data = dict(json.loads(m.group(1)))
params_raw = compat_urllib_parse.unquote(data['params'])
params = json.loads(params_raw)