From 0dfaf183b5f79433bfd62f5739ec8fac1b623120 Mon Sep 17 00:00:00 2001 From: Ritiek Date: Sun, 25 Jun 2017 00:31:57 +0530 Subject: [PATCH] Test YouTube track title --- core/misc.py | 6 +++--- spotdl.py | 12 ++++++------ test/test_basic.py | 15 +++++++++++++++ test/test_spotify.py | 9 --------- 4 files changed, 24 insertions(+), 18 deletions(-) create mode 100644 test/test_basic.py delete mode 100644 test/test_spotify.py diff --git a/core/misc.py b/core/misc.py index bc84beb..f3da00f 100755 --- a/core/misc.py +++ b/core/misc.py @@ -101,10 +101,10 @@ def generate_token(): token = creds.get_access_token() return token -def generate_search_URL(song): +def generate_search_url(song): # urllib2.quote() encodes URL with special characters - URL = "https://www.youtube.com/results?sp=EgIQAQ%253D%253D&q=" + quote(song) - return URL + url = "https://www.youtube.com/results?sp=EgIQAQ%253D%253D&q=" + quote(song) + return url # fix encoding issues in python2 def fix_encoding(query): diff --git a/spotdl.py b/spotdl.py index 35332f1..3176694 100755 --- a/spotdl.py +++ b/spotdl.py @@ -57,12 +57,12 @@ def generate_metadata(raw_song): #pprint.pprint(spotify.album(meta_tags['album']['id'])) return meta_tags -def generate_YouTube_URL(raw_song): +def generate_youtube_url(raw_song): # decode spotify http link to "[artist] - [song]" song = generate_songname(raw_song) # generate direct search YouTube URL - searchURL = misc.generate_search_URL(song) - item = urllib2.urlopen(searchURL).read() + search_url = misc.generate_search_url(song) + item = urllib2.urlopen(search_url).read() #item = unicode(item, 'utf-8') items_parse = BeautifulSoup(item, "html.parser") check = 1 @@ -97,12 +97,12 @@ def generate_YouTube_URL(raw_song): # parse track from YouTube def go_pafy(raw_song): # video link of the video to extract audio from - trackURL = generate_YouTube_URL(raw_song) - if trackURL is None: + track_url = generate_youtube_url(raw_song) + if track_url is None: return None else: # parse the YouTube video - return pafy.new(trackURL) + return pafy.new(track_url) # title of the YouTube video def get_YouTube_title(content, number=None): diff --git a/test/test_basic.py b/test/test_basic.py new file mode 100644 index 0000000..b03d063 --- /dev/null +++ b/test/test_basic.py @@ -0,0 +1,15 @@ +# -*- coding: UTF-8 -*- + +import spotdl + +raw_song = "http://open.spotify.com/track/2e0jnySVkYF1pvBlpoNX1Y" + +def test_spotify(): + expected_title = "David André Østby - Tilbake (SAEVIK Remix)" + title = spotdl.generate_songname(raw_song) + assert title == expected_title + +def test_youtube_title(): + expected_url = "youtube.com/watch?v=zkD4smbefbc" + url = spotdl.generate_youtube_url(raw_song) + assert url == expected_url diff --git a/test/test_spotify.py b/test/test_spotify.py deleted file mode 100644 index 05c25d4..0000000 --- a/test/test_spotify.py +++ /dev/null @@ -1,9 +0,0 @@ -# -*- coding: UTF-8 -*- - -import spotdl - -def test_songname(): - song = "http://open.spotify.com/track/2e0jnySVkYF1pvBlpoNX1Y" - expected_title = "David André Østby - Tilbake (SAEVIK Remix)" - title = spotdl.generate_songname(song) - assert title == expected_title