From 67f594c7b0021e711cac152edb69d7da916a3659 Mon Sep 17 00:00:00 2001 From: ritiek Date: Wed, 2 Aug 2017 17:49:16 +0530 Subject: [PATCH] Don't view sort results if metadata not found --- core/misc.py | 9 ++++++--- spotdl.py | 6 ++++-- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/core/misc.py b/core/misc.py index 59a839c..91b5fd4 100755 --- a/core/misc.py +++ b/core/misc.py @@ -98,11 +98,14 @@ def generate_token(): return token -def generate_search_url(song): +def generate_search_url(song, viewsort=False): """Generate YouTube search URL for the given song.""" # urllib.request.quote() encodes URL with special characters - url = u"https://www.youtube.com/results?q={0}&sp=CAMSAhABUBQ%253D".format( - quote(song)) + song = quote(song) + if viewsort: + url = u"https://www.youtube.com/results?q={0}&sp=CAMSAhABUBQ%253D".format(song) + else: + url = u"https://www.youtube.com/results?sp=EgIQAQ%253D%253D&q={0}".format(song) return url diff --git a/spotdl.py b/spotdl.py index 1d51f41..6b9512e 100755 --- a/spotdl.py +++ b/spotdl.py @@ -58,9 +58,11 @@ def generate_youtube_url(raw_song): meta_tags = generate_metadata(raw_song) if meta_tags is None: song = raw_song + search_url = misc.generate_search_url(song, viewsort=False) else: song = generate_songname(meta_tags) - search_url = misc.generate_search_url(song) + search_url = misc.generate_search_url(song, viewsort=True) + item = urllib.request.urlopen(search_url).read() # item = unicode(item, 'utf-8') items_parse = BeautifulSoup(item, "html.parser") @@ -83,7 +85,7 @@ def generate_youtube_url(raw_song): if not videos: return None - + if args.manual: print(song) print('')