projects
/
youtube-dl
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[twitch] Only match digits for the video id
[youtube-dl]
/
youtube_dl
/
extractor
/
tapely.py
diff --git
a/youtube_dl/extractor/tapely.py
b/youtube_dl/extractor/tapely.py
index 2c1178b1baedd592cabff19d386a836ab4f2aa1a..f1f43d0a7113cbf40e5dfd3ffb71af5e900fab78 100644
(file)
--- a/
youtube_dl/extractor/tapely.py
+++ b/
youtube_dl/extractor/tapely.py
@@
-4,10
+4,12
@@
from __future__ import unicode_literals
import re
from .common import InfoExtractor
import re
from .common import InfoExtractor
+from ..compat import (
+ compat_urllib_request,
+)
from ..utils import (
from ..utils import (
- ExtractorError,
clean_html,
clean_html,
-
compat_urllib_request
,
+
ExtractorError
,
float_or_none,
parse_iso8601,
)
float_or_none,
parse_iso8601,
)
@@
-17,6
+19,7
@@
class TapelyIE(InfoExtractor):
_VALID_URL = r'https?://(?:www\.)?tape\.ly/(?P<id>[A-Za-z0-9\-_]+)(?:/(?P<songnr>\d+))?'
_API_URL = 'http://tape.ly/showtape?id={0:}'
_S3_SONG_URL = 'http://mytape.s3.amazonaws.com/{0:}'
_VALID_URL = r'https?://(?:www\.)?tape\.ly/(?P<id>[A-Za-z0-9\-_]+)(?:/(?P<songnr>\d+))?'
_API_URL = 'http://tape.ly/showtape?id={0:}'
_S3_SONG_URL = 'http://mytape.s3.amazonaws.com/{0:}'
+ _SOUNDCLOUD_SONG_URL = 'http://api.soundcloud.com{0:}'
_TESTS = [
{
'url': 'http://tape.ly/my-grief-as-told-by-water',
_TESTS = [
{
'url': 'http://tape.ly/my-grief-as-told-by-water',
@@
-49,6
+52,7
@@
class TapelyIE(InfoExtractor):
request = compat_urllib_request.Request(playlist_url)
request.add_header('X-Requested-With', 'XMLHttpRequest')
request.add_header('Accept', 'application/json')
request = compat_urllib_request.Request(playlist_url)
request.add_header('X-Requested-With', 'XMLHttpRequest')
request.add_header('Accept', 'application/json')
+ request.add_header('Referer', url)
playlist = self._download_json(request, display_id)
playlist = self._download_json(request, display_id)
@@
-68,9
+72,15
@@
class TapelyIE(InfoExtractor):
})
entries.append(entry)
elif song['source'] == 'YT':
})
entries.append(entry)
elif song['source'] == 'YT':
- _, _, yt_id = song['filename'].split('/')
+ self.to_screen('YouTube video detected')
+ yt_id = song['filename'].replace('/youtube/', '')
entry.update(self.url_result(yt_id, 'Youtube', video_id=yt_id))
entries.append(entry)
entry.update(self.url_result(yt_id, 'Youtube', video_id=yt_id))
entries.append(entry)
+ elif song['source'] == 'SC':
+ self.to_screen('SoundCloud song detected')
+ sc_url = self._SOUNDCLOUD_SONG_URL.format(song['filename'])
+ entry.update(self.url_result(sc_url, 'Soundcloud'))
+ entries.append(entry)
else:
self.report_warning('Unknown song source: %s' % song['source'])
else:
self.report_warning('Unknown song source: %s' % song['source'])