projects
/
youtube-dl
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[theplatform] Add URL sign capability
[youtube-dl]
/
youtube_dl
/
extractor
/
soundcloud.py
diff --git
a/youtube_dl/extractor/soundcloud.py
b/youtube_dl/extractor/soundcloud.py
index f92f7fa243fcda2d61cda6aaa099a9db917897cd..c5284fa673b7eda4f74191fba6a788df39939a51 100644
(file)
--- a/
youtube_dl/extractor/soundcloud.py
+++ b/
youtube_dl/extractor/soundcloud.py
@@
-5,11
+5,12
@@
import re
import itertools
from .common import InfoExtractor
import itertools
from .common import InfoExtractor
-from ..
utils
import (
+from ..
compat
import (
compat_str,
compat_urlparse,
compat_urllib_parse,
compat_str,
compat_urlparse,
compat_urllib_parse,
-
+)
+from ..utils import (
ExtractorError,
int_or_none,
unified_strdate,
ExtractorError,
int_or_none,
unified_strdate,
@@
-32,7
+33,7
@@
class SoundcloudIE(InfoExtractor):
(?P<title>[\w\d-]+)/?
(?P<token>[^?]+?)?(?:[?].*)?$)
|(?:api\.soundcloud\.com/tracks/(?P<track_id>\d+)
(?P<title>[\w\d-]+)/?
(?P<token>[^?]+?)?(?:[?].*)?$)
|(?:api\.soundcloud\.com/tracks/(?P<track_id>\d+)
- (?:/?\?secret_token=(?P<secret_token>[^&]+
?))?$
)
+ (?:/?\?secret_token=(?P<secret_token>[^&]+
))?
)
|(?P<player>(?:w|player|p.)\.soundcloud\.com/player/?.*?url=.*)
)
'''
|(?P<player>(?:w|player|p.)\.soundcloud\.com/player/?.*?url=.*)
)
'''
@@
-159,7
+160,7
@@
class SoundcloudIE(InfoExtractor):
# We have to retrieve the url
streams_url = ('http://api.soundcloud.com/i1/tracks/{0}/streams?'
# We have to retrieve the url
streams_url = ('http://api.soundcloud.com/i1/tracks/{0}/streams?'
- 'client_id={1}&secret_token={2}'.format(track_id, self._IPHONE_CLIENT_ID, secret_token))
+
'client_id={1}&secret_token={2}'.format(track_id, self._IPHONE_CLIENT_ID, secret_token))
format_dict = self._download_json(
streams_url,
track_id, 'Downloading track url')
format_dict = self._download_json(
streams_url,
track_id, 'Downloading track url')
@@
-245,6
+246,7
@@
class SoundcloudSetIE(SoundcloudIE):
_TESTS = [{
'url': 'https://soundcloud.com/the-concept-band/sets/the-royal-concept-ep',
'info_dict': {
_TESTS = [{
'url': 'https://soundcloud.com/the-concept-band/sets/the-royal-concept-ep',
'info_dict': {
+ 'id': '2284613',
'title': 'The Royal Concept EP',
},
'playlist_mincount': 6,
'title': 'The Royal Concept EP',
},
'playlist_mincount': 6,
@@
-278,7
+280,7
@@
class SoundcloudSetIE(SoundcloudIE):
return {
'_type': 'playlist',
'entries': [self._extract_info_dict(track, secret_token=token) for track in info['tracks']],
return {
'_type': 'playlist',
'entries': [self._extract_info_dict(track, secret_token=token) for track in info['tracks']],
- 'id': info['id'],
+ 'id':
'%s' %
info['id'],
'title': info['title'],
}
'title': info['title'],
}
@@
-371,7
+373,7
@@
class SoundcloudPlaylistIE(SoundcloudIE):
entries = [
self._extract_info_dict(t, quiet=True, secret_token=token)
entries = [
self._extract_info_dict(t, quiet=True, secret_token=token)
-
for t in data['tracks']]
+ for t in data['tracks']]
return {
'_type': 'playlist',
return {
'_type': 'playlist',