From: Naglis Jonaitis Date: Mon, 1 Dec 2014 16:10:04 +0000 (+0200) Subject: [tunein] Use station API X-Git-Url: http://git.bitcoin.ninja/?a=commitdiff_plain;h=1434bffa1ff2fb1e4d80efc900a13a3541923119;p=youtube-dl [tunein] Use station API --- diff --git a/youtube_dl/extractor/tunein.py b/youtube_dl/extractor/tunein.py index 8c29f1634..4ce5aeeba 100644 --- a/youtube_dl/extractor/tunein.py +++ b/youtube_dl/extractor/tunein.py @@ -19,6 +19,7 @@ class TuneInIE(InfoExtractor): |tun\.in/(?P[A-Za-z0-9]+) ) ''' + _API_URL_TEMPLATE = 'http://tunein.com/tuner/tune/?stationId={0:}&tuneType=Station' _INFO_DICT = { 'id': '34682', @@ -56,13 +57,10 @@ class TuneInIE(InfoExtractor): mobj = re.match(self._VALID_URL, url) station_id = mobj.group('id') - webpage = self._download_webpage( - url, station_id, note='Downloading station webpage') + station_info = self._download_json( + self._API_URL_TEMPLATE.format(station_id), + station_id, note='Downloading station JSON') - payload = self._html_search_regex( - r'(?m)TuneIn\.payload\s*=\s*(\{[^$]+?)$', webpage, 'JSON data') - json_data = json.loads(payload) - station_info = json_data['Station']['broadcast'] title = station_info['Title'] thumbnail = station_info.get('Logo') location = station_info.get('Location')