diff options
Diffstat (limited to 'youtube_dl/extractor/internetvideoarchive.py')
| -rw-r--r-- | youtube_dl/extractor/internetvideoarchive.py | 24 | 
1 files changed, 15 insertions, 9 deletions
diff --git a/youtube_dl/extractor/internetvideoarchive.py b/youtube_dl/extractor/internetvideoarchive.py index 53f9a5f75..c813d4b82 100644 --- a/youtube_dl/extractor/internetvideoarchive.py +++ b/youtube_dl/extractor/internetvideoarchive.py @@ -3,9 +3,11 @@ from __future__ import unicode_literals  import re  from .common import InfoExtractor -from ..utils import ( +from ..compat import (      compat_urlparse,      compat_urllib_parse, +) +from ..utils import (      xpath_with_ns,  ) @@ -32,7 +34,7 @@ class InternetVideoArchiveIE(InfoExtractor):      def _clean_query(query):          NEEDED_ARGS = ['publishedid', 'customerid']          query_dic = compat_urlparse.parse_qs(query) -        cleaned_dic = dict((k,v[0]) for (k,v) in query_dic.items() if k in NEEDED_ARGS) +        cleaned_dic = dict((k, v[0]) for (k, v) in query_dic.items() if k in NEEDED_ARGS)          # Other player ids return m3u8 urls          cleaned_dic['playerid'] = '247'          cleaned_dic['videokbrate'] = '100000' @@ -45,22 +47,26 @@ class InternetVideoArchiveIE(InfoExtractor):          url = self._build_url(query)          flashconfiguration = self._download_xml(url, video_id, -            'Downloading flash configuration') +                                                'Downloading flash configuration')          file_url = flashconfiguration.find('file').text          file_url = file_url.replace('/playlist.aspx', '/mrssplaylist.aspx')          # Replace some of the parameters in the query to get the best quality          # and http links (no m3u8 manifests)          file_url = re.sub(r'(?<=\?)(.+)$', -            lambda m: self._clean_query(m.group()), -            file_url) +                          lambda m: self._clean_query(m.group()), +                          file_url)          info = self._download_xml(file_url, video_id, -            'Downloading video info') +                                  'Downloading video info')          item = info.find('channel/item')          def _bp(p): -            return xpath_with_ns(p, -                {'media': 'http://search.yahoo.com/mrss/', -                'jwplayer': 'http://developer.longtailvideo.com/trac/wiki/FlashFormats'}) +            return xpath_with_ns( +                p, +                { +                    'media': 'http://search.yahoo.com/mrss/', +                    'jwplayer': 'http://developer.longtailvideo.com/trac/wiki/FlashFormats', +                } +            )          formats = []          for content in item.findall(_bp('media:group/media:content')):              attr = content.attrib  | 
