aboutsummaryrefslogtreecommitdiff
path: root/youtube_dl
diff options
context:
space:
mode:
Diffstat (limited to 'youtube_dl')
-rw-r--r--youtube_dl/extractor/pandoratv.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/youtube_dl/extractor/pandoratv.py b/youtube_dl/extractor/pandoratv.py
index 2b07958bb..3e37ae01d 100644
--- a/youtube_dl/extractor/pandoratv.py
+++ b/youtube_dl/extractor/pandoratv.py
@@ -5,12 +5,14 @@ from .common import InfoExtractor
from ..compat import (
compat_str,
compat_urlparse,
+ compat_urllib_request,
)
from ..utils import (
ExtractorError,
float_or_none,
parse_duration,
str_to_int,
+ urlencode_postdata,
)
@@ -56,6 +58,18 @@ class PandoraTVIE(InfoExtractor):
r'^v(\d+)[Uu]rl$', format_id, 'height', default=None)
if not height:
continue
+
+ post_data = {'prgid': video_id, 'runtime': info.get('runtime'), 'vod_url': format_url}
+ play_url = self._download_json('http://m.pandora.tv/?c=api&m=play_url', video_id,
+ data=urlencode_postdata(post_data),
+ headers={
+ 'Origin': url,
+ 'Content-Type': 'application/x-www-form-urlencoded'
+ })
+ format_url = play_url.get('url')
+ if not format_url:
+ continue
+
formats.append({
'format_id': '%sp' % height,
'url': format_url,