X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=youtube_dl%2Fextractor%2Fslideshare.py;h=0b717a1e42b8dd2c3d8a88d602f001876cf99e03;hb=60bf45c80d377a38b00b9ec1426c4cc1d9003742;hp=9c62825cc7f7cab2a4023a74e36307b48c280bd6;hpb=18395217c489f1b324ea7b85305f8b2edaf237c9;p=youtube-dl diff --git a/youtube_dl/extractor/slideshare.py b/youtube_dl/extractor/slideshare.py index 9c62825cc..0b717a1e4 100644 --- a/youtube_dl/extractor/slideshare.py +++ b/youtube_dl/extractor/slideshare.py @@ -4,8 +4,10 @@ import re import json from .common import InfoExtractor -from ..utils import ( +from ..compat import ( compat_urlparse, +) +from ..utils import ( ExtractorError, ) @@ -28,7 +30,7 @@ class SlideshareIE(InfoExtractor): page_title = mobj.group('title') webpage = self._download_webpage(url, page_title) slideshare_obj = self._search_regex( - r'var slideshare_object = ({.*?}); var user_info =', + r'\$\.extend\(slideshare_object,\s*(\{.*?\})\);', webpage, 'slideshare object') info = json.loads(slideshare_obj) if info['slideshow']['type'] != 'video': @@ -39,7 +41,8 @@ class SlideshareIE(InfoExtractor): ext = info['jsplayer']['video_extension'] video_url = compat_urlparse.urljoin(bucket, doc + '-SD.' + ext) description = self._html_search_regex( - r'

]*>(.*?)

', webpage, 'description') + r'(?s)]+itemprop="description"[^>]*>(.+?)

', webpage, + 'description', fatal=False) return { '_type': 'video',