projects
/
youtube-dl
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
f817adc
)
[arte:+7] Look for json vp url in iframe (Closes #6895)
author
Sergey M․
<dstftw@gmail.com>
Sun, 20 Sep 2015 05:45:19 +0000
(11:45 +0600)
committer
Sergey M․
<dstftw@gmail.com>
Sun, 20 Sep 2015 05:45:19 +0000
(11:45 +0600)
youtube_dl/extractor/arte.py
patch
|
blob
|
history
diff --git
a/youtube_dl/extractor/arte.py
b/youtube_dl/extractor/arte.py
index 76de244774369dd53c510961ecf6b6a7641c7027..9ecb6786c240c9999a93d835cbad8e43f1001ef2 100644
(file)
--- a/
youtube_dl/extractor/arte.py
+++ b/
youtube_dl/extractor/arte.py
@@
-4,6
+4,10
@@
from __future__ import unicode_literals
import re
from .common import InfoExtractor
import re
from .common import InfoExtractor
+from ..compat import (
+ compat_parse_qs,
+ compat_urllib_parse_urlparse,
+)
from ..utils import (
find_xpath_attr,
unified_strdate,
from ..utils import (
find_xpath_attr,
unified_strdate,
@@
-77,7
+81,13
@@
class ArteTVPlus7IE(InfoExtractor):
def _extract_from_webpage(self, webpage, video_id, lang):
json_url = self._html_search_regex(
[r'arte_vp_url=["\'](.*?)["\']', r'data-url=["\']([^"]+)["\']'],
def _extract_from_webpage(self, webpage, video_id, lang):
json_url = self._html_search_regex(
[r'arte_vp_url=["\'](.*?)["\']', r'data-url=["\']([^"]+)["\']'],
- webpage, 'json vp url')
+ webpage, 'json vp url', default=None)
+ if not json_url:
+ iframe_url = self._html_search_regex(
+ r'<iframe[^>]+src=(["\'])(?P<url>.+\bjson_url=.+?)\1',
+ webpage, 'iframe url', group='iframe url')
+ json_url = compat_parse_qs(
+ compat_urllib_parse_urlparse(iframe_url).query)['json_url'][0]
return self._extract_from_json_url(json_url, video_id, lang)
def _extract_from_json_url(self, json_url, video_id, lang):
return self._extract_from_json_url(json_url, video_id, lang)
def _extract_from_json_url(self, json_url, video_id, lang):