summary refs log tree commit diff
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.gz
youtube-dl-6f71ef580c0d93947817c81a09f6a188631585a1.tar.xz
youtube-dl-6f71ef580c0d93947817c81a09f6a188631585a1.zip
[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)