]> jfr.im git - yt-dlp.git/blobdiff - yt_dlp/extractor/pandoratv.py
[LnkIE] Add extractor (#2408)
[yt-dlp.git] / yt_dlp / extractor / pandoratv.py
index 538738c090a515c296969dab9762ee1d643d1382..623005338b210ac4fd9d5924180e04eef15c6a1e 100644 (file)
@@ -1,17 +1,16 @@
 # coding: utf-8
 from __future__ import unicode_literals
 
-import re
 
 from .common import InfoExtractor
 from ..compat import (
     compat_str,
-    compat_urlparse,
 )
 from ..utils import (
     ExtractorError,
     float_or_none,
     parse_duration,
+    parse_qs,
     str_to_int,
     urlencode_postdata,
 )
@@ -71,12 +70,12 @@ class PandoraTVIE(InfoExtractor):
     }]
 
     def _real_extract(self, url):
-        mobj = re.match(self._VALID_URL, url)
+        mobj = self._match_valid_url(url)
         user_id = mobj.group('user_id')
         video_id = mobj.group('id')
 
         if not user_id or not video_id:
-            qs = compat_urlparse.parse_qs(compat_urlparse.urlparse(url).query)
+            qs = parse_qs(url)
             video_id = qs.get('prgid', [None])[0]
             user_id = qs.get('ch_userid', [None])[0]
             if any(not f for f in (video_id, user_id,)):