projects
/
youtube-dl
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
cf2bf84
)
[xfileshare] Improve removed videos detection
author
Sergey M․
<dstftw@gmail.com>
Sun, 12 Jun 2016 18:19:54 +0000
(
01:19
+0700)
committer
Sergey M․
<dstftw@gmail.com>
Sun, 12 Jun 2016 18:19:54 +0000
(
01:19
+0700)
youtube_dl/extractor/xfileshare.py
patch
|
blob
|
history
diff --git
a/youtube_dl/extractor/xfileshare.py
b/youtube_dl/extractor/xfileshare.py
index 0f8ccf430e0154a010f4559d5fb2eab3b092c374..995aada0d1565ccc76f2fa2c7654e3f53f834d91 100644
(file)
--- a/
youtube_dl/extractor/xfileshare.py
+++ b/
youtube_dl/extractor/xfileshare.py
@@
-32,7
+32,10
@@
class XFileShareIE(InfoExtractor):
_VALID_URL = (r'https?://(?P<host>(?:www\.)?(?:%s))/(?:embed-)?(?P<id>[0-9a-zA-Z]+)'
% '|'.join(re.escape(site) for site in list(zip(*_SITES))[0]))
_VALID_URL = (r'https?://(?P<host>(?:www\.)?(?:%s))/(?:embed-)?(?P<id>[0-9a-zA-Z]+)'
% '|'.join(re.escape(site) for site in list(zip(*_SITES))[0]))
- _FILE_NOT_FOUND_REGEX = r'>(?:404 - )?File Not Found<'
+ _FILE_NOT_FOUND_REGEXES = (
+ r'>(?:404 - )?File Not Found<',
+ r'>The file was removed by administrator<',
+ )
_TESTS = [{
'url': 'http://gorillavid.in/06y9juieqpmi',
_TESTS = [{
'url': 'http://gorillavid.in/06y9juieqpmi',
@@
-88,6
+91,10
@@
class XFileShareIE(InfoExtractor):
'ext': 'mp4',
'title': 'Chucky Prank 2015.mp4',
},
'ext': 'mp4',
'title': 'Chucky Prank 2015.mp4',
},
+ }, {
+ # removed by administrator
+ 'url': 'http://xvidstage.com/amfy7atlkx25',
+ 'only_matching': True,
}]
def _real_extract(self, url):
}]
def _real_extract(self, url):
@@
-97,7
+104,7
@@
class XFileShareIE(InfoExtractor):
url = 'http://%s/%s' % (mobj.group('host'), video_id)
webpage = self._download_webpage(url, video_id)
url = 'http://%s/%s' % (mobj.group('host'), video_id)
webpage = self._download_webpage(url, video_id)
- if
re.search(self._FILE_NOT_FOUND_REGEX, webpage) is not None
:
+ if
any(re.search(p, webpage) for p in self._FILE_NOT_FOUND_REGEXES)
:
raise ExtractorError('Video %s does not exist' % video_id, expected=True)
fields = self._hidden_inputs(webpage)
raise ExtractorError('Video %s does not exist' % video_id, expected=True)
fields = self._hidden_inputs(webpage)