Browse Source

Added an IE for freesound.org

master
M.Yasoob Khalid 11 years ago
parent
commit
5d9b75051a
2 changed files with 28 additions and 0 deletions
  1. 1
      youtube_dl/extractor/__init__.py
  2. 27
      youtube_dl/extractor/freesound.py

1
youtube_dl/extractor/__init__.py

@ -19,6 +19,7 @@ from .eighttracks import EightTracksIE
from .escapist import EscapistIE
from .facebook import FacebookIE
from .flickr import FlickrIE
from .freesound import FreeSoundIE
from .funnyordie import FunnyOrDieIE
from .gamespot import GameSpotIE
from .gametrailers import GametrailersIE

27
youtube_dl/extractor/freesound.py

@ -0,0 +1,27 @@
# -*- coding: utf-8 -*-
import re
from .common import InfoExtractor
class FreeSoundIE(InfoExtractor):
_VALID_URL = r'(?:http://)?(?:www\.)?freesound\.org/people/([^/]+)/sounds/([^/]+)'
def _real_extract(self, url):
mobj = re.match(self._VALID_URL, url)
music_id = mobj.group(2)
webpage = self._download_webpage(url, music_id)
title = self._html_search_regex(r'<meta property="og:title" content="([^"]*)"',
webpage, 'music title')
music_url = self._html_search_regex(r'<meta property="og:audio" content="([^"]*)"',
webpage, 'music url')
uploader = self._html_search_regex(r'<meta property="og:audio:artist" content="([^"]*)"',
webpage, 'music uploader')
ext = music_url.split('.')[-1]
return [{
'id': music_id,
'title': title,
'url': music_url,
'uploader': uploader,
'ext': ext,
}]
|||||||
100:0
Loading…
Cancel
Save