[openload] Randomize User-Agent (closes #20688)
authorSergey M․ <dstftw@gmail.com>
Tue, 16 Apr 2019 17:08:50 +0000 (00:08 +0700)
committerSergey M․ <dstftw@gmail.com>
Tue, 16 Apr 2019 17:08:50 +0000 (00:08 +0700)
youtube_dl/extractor/openload.py

index da9c721d2b4fa8411f28c119dd3230a3dafa88d5..5f5425fbc39780053b20d2c07f3069dca92e6b2f 100644 (file)
@@ -3,6 +3,7 @@ from __future__ import unicode_literals
 
 import json
 import os
+import random
 import re
 import subprocess
 import tempfile
@@ -361,7 +362,7 @@ class OpenloadIE(InfoExtractor):
         'only_matching': True,
     }]
 
-    _USER_AGENT = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36'
+    _USER_AGENT_TPL = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/{major}.0.{build}.{patch} Safari/537.36'
 
     @staticmethod
     def _extract_urls(webpage):
@@ -376,7 +377,11 @@ class OpenloadIE(InfoExtractor):
 
         url_pattern = 'https://%s/%%s/%s/' % (host, video_id)
         headers = {
-            'User-Agent': self._USER_AGENT,
+            'User-Agent': self._USER_AGENT_TPL % {
+                'major': random.randint(63, 73),
+                'build': random.randint(3239, 3683),
+                'patch': random.randint(0, 100),
+            },
         }
 
         for path in ('embed', 'f'):