diff options
author | Sergey M․ <dstftw@gmail.com> | 2015-02-24 23:06:44 +0600 |
---|---|---|
committer | Sergey M․ <dstftw@gmail.com> | 2015-02-24 23:06:44 +0600 |
commit | 41b264e77cd357444b632a132ea11ff7ddc3de1f (patch) | |
tree | 2a314f9e99e1ad8762bb8ec6109d45a8a0616447 | |
parent | df4bd0d53ff4baff6ce25ad04a1e87f37777c3ff (diff) |
[nrktv] Workaround subtitles conversion issues on python 2.6 (Closes #5036)
-rw-r--r-- | youtube_dl/extractor/nrk.py | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/youtube_dl/extractor/nrk.py b/youtube_dl/extractor/nrk.py index 46f493cfc..1e4cfa2e7 100644 --- a/youtube_dl/extractor/nrk.py +++ b/youtube_dl/extractor/nrk.py @@ -4,6 +4,7 @@ from __future__ import unicode_literals import re from .common import InfoExtractor +from ..compat import compat_str from ..utils import ( ExtractorError, float_or_none, @@ -158,7 +159,9 @@ class NRKTVIE(InfoExtractor): def _get_subtitles(self, subtitlesurl, video_id, baseurl): url = "%s%s" % (baseurl, subtitlesurl) self._debug_print('%s: Subtitle url: %s' % (video_id, url)) - captions = self._download_xml(url, video_id, 'Downloading subtitles') + captions = self._download_xml( + url, video_id, 'Downloading subtitles', + transform_source=lambda s: s.replace(r'<br />', '\r\n')) lang = captions.get('lang', 'no') ps = captions.findall('./{0}body/{0}div/{0}p'.format('{http://www.w3.org/ns/ttml}')) srt = '' @@ -167,8 +170,7 @@ class NRKTVIE(InfoExtractor): duration = parse_duration(p.get('dur')) starttime = self._seconds2str(begin) endtime = self._seconds2str(begin + duration) - text = '\n'.join(p.itertext()) - srt += '%s\r\n%s --> %s\r\n%s\r\n\r\n' % (str(pos), starttime, endtime, text) + srt += '%s\r\n%s --> %s\r\n%s\r\n\r\n' % (compat_str(pos), starttime, endtime, p.text) return {lang: [ {'ext': 'ttml', 'url': url}, {'ext': 'srt', 'data': srt}, |