projects
/
youtube-dl
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Improve geo bypass mechanism
[youtube-dl]
/
youtube_dl
/
extractor
/
iprima.py
diff --git
a/youtube_dl/extractor/iprima.py
b/youtube_dl/extractor/iprima.py
index 788bbe0d5c44177b5a943da9f9c3c3adf46a77b1..0fe5768834cef9faed9226ebc8418661306f2b54 100644
(file)
--- a/
youtube_dl/extractor/iprima.py
+++ b/
youtube_dl/extractor/iprima.py
@@
-65,7
+65,7
@@
class IPrimaIE(InfoExtractor):
options = self._parse_json(
self._search_regex(
options = self._parse_json(
self._search_regex(
- r'(?s)
var\s+playerOptions\s*=\s*({.+?});
',
+ r'(?s)
(?:TDIPlayerOptions|playerOptions)\s*=\s*({.+?});\s*\]\]
',
playerpage, 'player options', default='{}'),
video_id, transform_source=js_to_json, fatal=False)
if options:
playerpage, 'player options', default='{}'),
video_id, transform_source=js_to_json, fatal=False)
if options:
@@
-81,6
+81,9
@@
class IPrimaIE(InfoExtractor):
for _, src in re.findall(r'src["\']\s*:\s*(["\'])(.+?)\1', playerpage):
extract_formats(src)
for _, src in re.findall(r'src["\']\s*:\s*(["\'])(.+?)\1', playerpage):
extract_formats(src)
+ if not formats and '>GEO_IP_NOT_ALLOWED<' in playerpage:
+ self.raise_geo_restricted()
+
self._sort_formats(formats)
return {
self._sort_formats(formats)
return {