projects
/
youtube-dl
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
ba1d4c0
)
[beatenpro] Simplify
author
Sergey M․
<dstftw@gmail.com>
Fri, 13 Mar 2015 16:11:56 +0000
(22:11 +0600)
committer
Sergey M․
<dstftw@gmail.com>
Fri, 13 Mar 2015 16:11:56 +0000
(22:11 +0600)
youtube_dl/extractor/beatportpro.py
patch
|
blob
|
history
diff --git
a/youtube_dl/extractor/beatportpro.py
b/youtube_dl/extractor/beatportpro.py
index 5c072b131e7ec7db771925e2d22c3a32edcbd7bd..12a7faa4f77207a070cdca6e5f2b6065d25e7887 100644
(file)
--- a/
youtube_dl/extractor/beatportpro.py
+++ b/
youtube_dl/extractor/beatportpro.py
@@
-2,9
+2,9
@@
from __future__ import unicode_literals
import re
from __future__ import unicode_literals
import re
-import json
from .common import InfoExtractor
from .common import InfoExtractor
+from ..compat import compat_str
from ..utils import int_or_none
from ..utils import int_or_none
@@
-46,10
+46,11
@@
class BeatportProIE(InfoExtractor):
webpage = self._download_webpage(url, display_id)
webpage = self._download_webpage(url, display_id)
- playables = self._search_regex(
- r'window\.Playables\s*=\s*({.*?});', webpage,
- 'playables info', flags=re.DOTALL)
- playables = json.loads(playables)
+ playables = self._parse_json(
+ self._search_regex(
+ r'window\.Playables\s*=\s*({.+?});', webpage,
+ 'playables info', flags=re.DOTALL),
+ track_id)
track = next(t for t in playables['tracks'] if t['id'] == int(track_id))
track = next(t for t in playables['tracks'] if t['id'] == int(track_id))
@@
-59,7
+60,7
@@
class BeatportProIE(InfoExtractor):
formats = []
for ext, info in track['preview'].items():
formats = []
for ext, info in track['preview'].items():
- if
info['url'] is None
:
+ if
not info['url']
:
continue
fmt = {
'url': info['url'],
continue
fmt = {
'url': info['url'],
@@
-85,16
+86,16
@@
class BeatportProIE(InfoExtractor):
image_url = info.get('url')
if name == 'dynamic' or not image_url:
continue
image_url = info.get('url')
if name == 'dynamic' or not image_url:
continue
- im
g
= {
+ im
age
= {
'id': name,
'url': image_url,
'height': int_or_none(info.get('height')),
'width': int_or_none(info.get('width')),
}
'id': name,
'url': image_url,
'height': int_or_none(info.get('height')),
'width': int_or_none(info.get('width')),
}
- images.append(im
g
)
+ images.append(im
age
)
return {
return {
- 'id':
track['id']
,
+ 'id':
compat_str(track.get('id')) or track_id
,
'display_id': track.get('slug') or display_id,
'title': title,
'formats': formats,
'display_id': track.get('slug') or display_id,
'title': title,
'formats': formats,