projects
/
youtube-dl
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge pull request #9195 from remitamine/ffmpeg-pipe
[youtube-dl]
/
youtube_dl
/
extractor
/
played.py
diff --git
a/youtube_dl/extractor/played.py
b/youtube_dl/extractor/played.py
index a396e62e50d64c977b96d796da6d22f006f0316f..57c875ef05dd74a429ea55313b0d956ef7e5ec56 100644
(file)
--- a/
youtube_dl/extractor/played.py
+++ b/
youtube_dl/extractor/played.py
@@
-2,19
+2,19
@@
from __future__ import unicode_literals
import re
from __future__ import unicode_literals
import re
-import time
import os.path
from .common import InfoExtractor
from ..utils import (
import os.path
from .common import InfoExtractor
from ..utils import (
- compat_urllib_parse,
- compat_urllib_request,
+ ExtractorError,
+ sanitized_Request,
+ urlencode_postdata,
)
class PlayedIE(InfoExtractor):
IE_NAME = 'played.to'
)
class PlayedIE(InfoExtractor):
IE_NAME = 'played.to'
- _VALID_URL = r'https?://played\.to/(?P<id>[a-zA-Z0-9_-]+)'
+ _VALID_URL = r'https?://
(?:www\.)?
played\.to/(?P<id>[a-zA-Z0-9_-]+)'
_TEST = {
'url': 'http://played.to/j2f2sfiiukgt',
_TEST = {
'url': 'http://played.to/j2f2sfiiukgt',
@@
-24,24
+24,27
@@
class PlayedIE(InfoExtractor):
'ext': 'flv',
'title': 'youtube-dl_test_video.mp4',
},
'ext': 'flv',
'title': 'youtube-dl_test_video.mp4',
},
+ 'skip': 'Removed for copyright infringement.', # oh wow
}
def _real_extract(self, url):
}
def _real_extract(self, url):
- mobj = re.match(self._VALID_URL, url)
- video_id = mobj.group('id')
-
+ video_id = self._match_id(url)
orig_webpage = self._download_webpage(url, video_id)
orig_webpage = self._download_webpage(url, video_id)
- fields = re.findall(r'type="hidden" name="(.+?)"\s* value="?(.+?)">', orig_webpage)
- data = dict(fields)
- self.to_screen('%s: Waiting for timeout' % video_id)
- time.sleep(2)
+ m_error = re.search(
+ r'(?s)Reason for deletion:.*?<b class="err"[^>]*>(?P<msg>[^<]+)</b>', orig_webpage)
+ if m_error:
+ raise ExtractorError(m_error.group('msg'), expected=True)
+
+ data = self._hidden_inputs(orig_webpage)
- post = compat_urllib_parse.urlencode(data)
+ self._sleep(2, video_id)
+
+ post = urlencode_postdata(data)
headers = {
b'Content-Type': b'application/x-www-form-urlencoded',
}
headers = {
b'Content-Type': b'application/x-www-form-urlencoded',
}
- req =
compat_urllib_request.
Request(url, post, headers)
+ req =
sanitized_
Request(url, post, headers)
webpage = self._download_webpage(
req, video_id, note='Downloading video page ...')
webpage = self._download_webpage(
req, video_id, note='Downloading video page ...')
@@
-54,4
+57,4
@@
class PlayedIE(InfoExtractor):
'id': video_id,
'title': title,
'url': video_url,
'id': video_id,
'title': title,
'url': video_url,
- }
\ No newline at end of file
+ }