diff options
author | Philipp Hagemeister <phihag@phihag.de> | 2011-12-15 20:32:05 +0100 |
---|---|---|
committer | Philipp Hagemeister <phihag@phihag.de> | 2011-12-15 20:32:05 +0100 |
commit | bb8abbbbaebccbdd3172479ff4ecdb518fe92f99 (patch) | |
tree | 9eb3fa2247b10079e7b54eba1ad51fe2065430e4 /youtube_dl/__init__.py | |
parent | 561504fffaec8a141a5bdd20ca0a418795d38835 (diff) |
Dailymotion: Use og:title instead of <title> to find title (Closes: #253)
Diffstat (limited to 'youtube_dl/__init__.py')
-rwxr-xr-x | youtube_dl/__init__.py | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/youtube_dl/__init__.py b/youtube_dl/__init__.py index 6a6033491..d26019975 100755 --- a/youtube_dl/__init__.py +++ b/youtube_dl/__init__.py @@ -1591,6 +1591,8 @@ class DailymotionIE(InfoExtractor): self._downloader.to_screen(u'[dailymotion] %s: Extracting information' % video_id) def _real_extract(self, url): + htmlParser = HTMLParser.HTMLParser() + # Extract id and simplified title from URL mobj = re.match(self._VALID_URL, url) if mobj is None: @@ -1601,7 +1603,6 @@ class DailymotionIE(InfoExtractor): self._downloader.increment_downloads() video_id = mobj.group(1) - simple_title = mobj.group(2).decode('utf-8') video_extension = 'flv' # Retrieve video webpage to extract further information @@ -1631,12 +1632,13 @@ class DailymotionIE(InfoExtractor): video_url = mediaURL - mobj = re.search(r'(?im)<title>\s*(.+)\s*-\s*Video\s+Dailymotion</title>', webpage) + mobj = re.search(r'<meta property="og:title" content="(?P<title>[^"]*)" />', webpage) if mobj is None: self._downloader.trouble(u'ERROR: unable to extract title') return - video_title = mobj.group(1).decode('utf-8') + video_title = htmlParser.unescape(mobj.group('title')).decode('utf-8') video_title = sanitize_title(video_title) + simple_title = _simplify_title(video_title) mobj = re.search(r'(?im)<span class="owner[^\"]+?">[^<]+?<a [^>]+?>([^<]+?)</a></span>', webpage) if mobj is None: |