commit 5c9ced9504bd2ceb8e55a929124aad2091b23403
parent 686cc8963441c37105c0447f31c5ea21405be05a
Author: Sergey M․ <dstftw@gmail.com>
Date: Mon, 2 May 2016 18:19:00 +0600
[vevo] Improve genre extraction
Diffstat:
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/youtube_dl/extractor/vevo.py b/youtube_dl/extractor/vevo.py
@@ -5,6 +5,7 @@ import re
from .common import InfoExtractor
from ..compat import (
compat_etree_fromstring,
+ compat_str,
compat_urlparse,
)
from ..utils import (
@@ -116,6 +117,10 @@ class VevoIE(VevoBaseIE):
'genre': 'Pop',
},
'expected_warnings': ['Failed to download video versions info'],
+ }, {
+ # no genres available
+ 'url': 'http://www.vevo.com/watch/INS171400764',
+ 'only_matching': True,
}]
_SMIL_BASE_URL = 'http://smil.lvl3.vevo.com'
_SOURCE_TYPES = {
@@ -339,7 +344,11 @@ class VevoIE(VevoBaseIE):
if featured_artist:
artist = '%s ft. %s' % (artist, featured_artist)
title = '%s - %s' % (artist, track) if artist else track
- genre = video_info.get('genres', [None])[0]
+
+ genres = video_info.get('genres')
+ genre = (
+ genres[0] if genres and isinstance(genres, list) and
+ isinstance(genres[0], compat_str) else None)
is_explicit = video_info.get('isExplicit')
if is_explicit is True: