Esempio n. 1
0
def chooseSong(text):
    print "Selecting Song"
    # print "Converting to text"
    # text = html2text.html2text(text);
    # print text
    print "Finding Keywords:"
    keywords = identify.identify_keywords(text)
    for keyword in keywords.iteritems():
      print "{}: {}".format(keyword[0], keyword[1])
#     answers = getTagsFromImages(images)
#     for key in answers:
#         if (key in keywords):
#             keywords[key] += answers[key]
#         else:
# 	          keywords[key] = answers[key]
    wordlist = sorted(keywords.keys(), key = lambda x : -keywords[x])
    wordlist = identify.filter_stopwords(wordlist)
    wordlist = wordlist[:10]
    print "Top 10 words, filtered out stopwords"
    for word in wordlist:
      print word
#   print "Finding relevant songs"
    songs = spotify.full_process(wordlist)
    print songs
    # print "Finding lyrics"
    # song = scraper.computeSong(songs, keywords)
    song = songs[0]
    print "Final Song:"
    print song[0] + " by " +  song[1]
  #   stuff = requests.get("http://api.musixmatch.com/ws/1.1/track.search?apikey=" + environ.get("MUSIX_API_KEY") + "&q_track=" + song[0] + "&q_artist=" + song[1])
  #   stuff = stuff.json()
  #   stuff = stuff["message"]["body"]["track_list"][0]["track"]["track_spotify_id"]
  #   print stuff
  #   return stuff
    return song[3]
    def test_keywords(self):

        keys,sent=get_sentence_keywords()

        result=identify_keywords.identify_keywords(keys,sent)
        expected=["Italian:Pizza"]
        expected=set(expected)
        self.assertEqual(result,expected)
Esempio n. 3
0
def keylyrics(name, artist):
    stuff = requests.get("http://api.musixmatch.com/ws/1.1/track.search?apikey=" + environ.get("MUSIX_API_KEY") + "&q_track=" + name + "&q_artist=" + artist)
    stuff = stuff.json()
    if (len(stuff["message"]["body"]["track_list"]) == 0):
        return []
    stuff = stuff["message"]["body"]["track_list"][0]["track"]["track_id"]
    page = requests.get("http://api.musixmatch.com/ws/1.1/track.lyrics.get?apikey=" + environ.get("MUSIX_API_KEY") + "&track_id=" + str(stuff))
    tree = page.json()
    if (tree["message"]["header"]["status_code"] == 404):
        return []
    lyrics = tree["message"]["body"]["lyrics"]["lyrics_body"]
    return identify.identify_keywords(lyrics)
Esempio n. 4
0
def chooseSong(text):
    print "HELLO NG WORLD"
    text = html2text.html2text(text);
    keywords = identify.identify_keywords(text)
    print keywords
    keywords = identify.identify_keywords(text)
#     answers = getTagsFromImages(images)
#     for key in answers:
#         if (key in keywords):
#             keywords[key] += answers[key]
#         else:
# 	          keywords[key] = answers[key]
    wordlist = sorted(keywords.keys(), key = lambda x : -keywords[x])
    wordlist = wordlist[:10]
    songs = spotify.full_process(wordlist)
    song = scraper.computeSong(songs, keywords)
    print song[0] + " by " +  song[1]
  #   stuff = requests.get("http://api.musixmatch.com/ws/1.1/track.search?apikey=" + environ.get("MUSIX_API_KEY") + "&q_track=" + song[0] + "&q_artist=" + song[1])
  #   stuff = stuff.json()
  #   stuff = stuff["message"]["body"]["track_list"][0]["track"]["track_spotify_id"]
  #   print stuff
  #   return stuff
    return song[3]
Esempio n. 5
0
def chooseSong(text):
    keywords = identify.identify_keywords(text)
    wordlist = []
    for word in keywords:
        wordlist.append(word)
    for i in range(0, len(keywords)):
        for j in range(i + 1, len(keywords)):
            if (keywords[wordlist[i]] < keywords[wordlist[j]]):
                temp = wordlist[i]
                wordlist[i] = wordlist[j]
                wordlist[j] = temp
    wordlist = wordlist[:10]
    songs = spotify.full_process(wordlist)
    song = scraper.computeSong(songs, keywords)
    stuff = requests.get("http://api.musixmatch.com/ws/1.1/track.search?apikey=" + environ.get("MUSIX_API_KEY") + "&q_track=" + song[0] + "&q_artist=" + song[1])
    stuff = stuff.json()
    stuff = stuff["message"]["body"]["track_list"][0]["track"]["track_id"]
    return stuff
Esempio n. 6
0
import identify_keywords as identify

#list of keywords with which the given sentence is matched
given_keywords = [
    "AI Algorithms", "Crazy Website", "MEAN website", "AI Hype", "AI",
    "My Crazy Website", "AI Module", "New York", "Egg York", "Italian:Pizza",
    "French-Pizza", "Super_AI", "The Dark Knight", "The Dark Knight Rises"
]

#can be populated from DB, can be name of people, project names or anything.

sentence = "I want an Italian Pizza"

keys_identified = identify.identify_keywords(given_keywords, sentence)

print("Keywords fuzzily matched are: ", keys_identified)