about summary refs log tree commit diff
diff options
context:
space:
mode:
authorRemita Amine <remitamine@gmail.com>2021-06-28 20:06:33 +0100
committerRemita Amine <remitamine@gmail.com>2021-06-28 20:08:39 +0100
commit7fb9564420d43252c8f8c453d4dc54bf3ff9f8ee (patch)
tree5ae0f617745f1435c186b858bc5e79a3f3946da2
parent379f52a4954013767219d25099cce9e0f9401961 (diff)
downloadyoutube-dl-7fb9564420d43252c8f8c453d4dc54bf3ff9f8ee.tar.gz
youtube-dl-7fb9564420d43252c8f8c453d4dc54bf3ff9f8ee.tar.xz
youtube-dl-7fb9564420d43252c8f8c453d4dc54bf3ff9f8ee.zip
[periscope] pass referer to HLS requests(closes #29419)
-rw-r--r--youtube_dl/extractor/periscope.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/youtube_dl/extractor/periscope.py b/youtube_dl/extractor/periscope.py
index b15906390..b93a02b7d 100644
--- a/youtube_dl/extractor/periscope.py
+++ b/youtube_dl/extractor/periscope.py
@@ -12,6 +12,10 @@ from ..utils import (
 
 
 class PeriscopeBaseIE(InfoExtractor):
+    _M3U8_HEADERS = {
+        'Referer': 'https://www.periscope.tv/'
+    }
+
     def _call_api(self, method, query, item_id):
         return self._download_json(
             'https://api.periscope.tv/api/v2/%s' % method,
@@ -54,9 +58,11 @@ class PeriscopeBaseIE(InfoExtractor):
             m3u8_url, video_id, 'mp4',
             entry_protocol='m3u8_native'
             if state in ('ended', 'timed_out') else 'm3u8',
-            m3u8_id=format_id, fatal=fatal)
+            m3u8_id=format_id, fatal=fatal, headers=self._M3U8_HEADERS)
         if len(m3u8_formats) == 1:
             self._add_width_and_height(m3u8_formats[0], width, height)
+        for f in m3u8_formats:
+            f.setdefault('http_headers', {}).update(self._M3U8_HEADERS)
         return m3u8_formats