0
0
Fork 0
mirror of https://github.com/yt-dlp/yt-dlp.git synced 2024-12-30 02:01:05 +00:00

Merge remote-tracking branch 'xantares/goldenmoustache'

This commit is contained in:
Philipp Hagemeister 2014-11-12 15:34:31 +01:00
commit 0b201a3134
2 changed files with 51 additions and 0 deletions

View file

@ -141,6 +141,7 @@
from .glide import GlideIE from .glide import GlideIE
from .globo import GloboIE from .globo import GloboIE
from .godtube import GodTubeIE from .godtube import GodTubeIE
from .goldenmoustache import GoldenMoustacheIE
from .golem import GolemIE from .golem import GolemIE
from .googleplus import GooglePlusIE from .googleplus import GooglePlusIE
from .googlesearch import GoogleSearchIE from .googlesearch import GoogleSearchIE

View file

@ -0,0 +1,50 @@
from __future__ import unicode_literals
import re
from .common import InfoExtractor
from ..utils import (
parse_duration,
int_or_none,
)
class GoldenMoustacheIE(InfoExtractor):
_VALID_URL = r'https?://(?:www\.)?goldenmoustache\.com/(?P<display_id>[\w-]+)-(?P<id>\d+)'
_TEST = {
'url': 'http://www.goldenmoustache.com/suricate-le-poker-3700/',
'md5': '0f904432fa07da5054d6c8beb5efb51a',
'info_dict': {
'id': '3700',
'ext': 'mp4',
'title': 'Suricate - Le Poker',
'description': 'md5:3d1f242f44f8c8cb0a106f1fd08e5dc9',
'thumbnail': 'md5:fd41386bc1f932552622da4a7e9a7242',
}
}
def _real_extract(self, url):
mobj = re.match(self._VALID_URL, url)
video_id = mobj.group('id')
webpage = self._download_webpage(url, video_id)
video_url = self._html_search_regex(r'data-src-type="mp4" data-src="([^"]+)"', webpage, 'video URL')
title = self._html_search_regex(r'<title>(.*?) - Golden Moustache</title>', webpage, 'title')
thumbnail = self._html_search_meta('og:image', webpage, 'thumbnail')
description = self._html_search_meta('og:description', webpage, 'description')
view_count = int_or_none(self._html_search_regex(
r'<strong>(\d+)</strong>\s*VUES</span>', webpage, 'view count', fatal=False))
return {
'id': video_id,
'url': video_url,
'ext': 'mp4',
'title': title,
'description': description,
'thumbnail': thumbnail,
'view_count': view_count,
}