projects
/
youtube-dl
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
a42839e
)
[smotri:broadcast] Fix extraction (closes #16180)
author
Sergey M․
<dstftw@gmail.com>
Sun, 15 Apr 2018 17:54:21 +0000
(
00:54
+0700)
committer
Sergey M․
<dstftw@gmail.com>
Sun, 15 Apr 2018 17:54:21 +0000
(
00:54
+0700)
youtube_dl/extractor/smotri.py
patch
|
blob
|
history
diff --git
a/youtube_dl/extractor/smotri.py
b/youtube_dl/extractor/smotri.py
index 370fa887968128281a6286f78a1fdf4bf59f7b9f..45995f30f301ff1a442c584505bf3d0d848ca069 100644
(file)
--- a/
youtube_dl/extractor/smotri.py
+++ b/
youtube_dl/extractor/smotri.py
@@
-310,6
+310,7
@@
class SmotriBroadcastIE(InfoExtractor):
IE_DESC = 'Smotri.com broadcasts'
IE_NAME = 'smotri:broadcast'
_VALID_URL = r'https?://(?:www\.)?(?P<url>smotri\.com/live/(?P<id>[^/]+))/?.*'
IE_DESC = 'Smotri.com broadcasts'
IE_NAME = 'smotri:broadcast'
_VALID_URL = r'https?://(?:www\.)?(?P<url>smotri\.com/live/(?P<id>[^/]+))/?.*'
+ _NETRC_MACHINE = 'smotri'
def _real_extract(self, url):
mobj = re.match(self._VALID_URL, url)
def _real_extract(self, url):
mobj = re.match(self._VALID_URL, url)
@@
-352,17
+353,18
@@
class SmotriBroadcastIE(InfoExtractor):
adult_content = False
ticket = self._html_search_regex(
adult_content = False
ticket = self._html_search_regex(
- r"window\.broadcast_control\.addFlashVar\('file'\s*,\s*'([^']+)'\)",
- broadcast_page, 'broadcast ticket')
+ (r'data-user-file=(["\'])(?P<ticket>(?!\1).+)\1',
+ r"window\.broadcast_control\.addFlashVar\('file'\s*,\s*'(?P<ticket>[^']+)'\)"),
+ broadcast_page, 'broadcast ticket', group='ticket')
- url = 'http://smotri.com/broadcast/view/url/?ticket=%s' % ticket
+
broadcast_
url = 'http://smotri.com/broadcast/view/url/?ticket=%s' % ticket
broadcast_password = self._downloader.params.get('videopassword')
if broadcast_password:
broadcast_password = self._downloader.params.get('videopassword')
if broadcast_password:
- url += '&pass=%s' % hashlib.md5(broadcast_password.encode('utf-8')).hexdigest()
+
broadcast_
url += '&pass=%s' % hashlib.md5(broadcast_password.encode('utf-8')).hexdigest()
broadcast_json_page = self._download_webpage(
broadcast_json_page = self._download_webpage(
- url, broadcast_id, 'Downloading broadcast JSON')
+
broadcast_
url, broadcast_id, 'Downloading broadcast JSON')
try:
broadcast_json = json.loads(broadcast_json_page)
try:
broadcast_json = json.loads(broadcast_json_page)