3 from __future__ import unicode_literals
7 from .common import InfoExtractor
10 class ClypIE(InfoExtractor):
11 _VALID_URL = r'https?://(?:www\.)?clyp\.it/(?P<id>[a-z0-9]+)'
14 'url': 'https://clyp.it/ojz2wfah',
15 'md5': '1d4961036c41247ecfdcc439c0cddcbb',
19 'title': 'Krisson80 - bits wip wip',
20 'description': '#Krisson80BitsWipWip #chiptune\n#wip',
23 'url': 'https://clyp.it/ojz2wfah',
24 'only_matching': True,
27 def _real_extract(self, url):
28 audio_id = self._match_id(url)
29 api_url = 'https://api.clyp.it/' + audio_id
30 metadata = self._download_json(api_url, audio_id)
32 title = metadata['Title']
35 if metadata['Description']: description = metadata['Description']
38 if metadata['Duration']: duration = int(metadata['Duration'])
42 'url': metadata['OggUrl'],
46 'url': metadata['Mp3Url'],
55 'description': description,