2016-07-19 12 views
0
def get_data(key, region, *ids): 
    url = "https://www.googleapis.com/youtube/v3/videos?part=snippet&id={ids}&key={api_key}" 
    r = requests.get(url.format(ids=",".join(ids), api_key=key)) 
    js = r.json() 
    items = js["items"] 
    cat_js = requests.get("https://www.googleapis.com/youtube/v3/videoCategories?part=snippet&regionCode={}&key={}".format(region, 
    key)).json() 
    categories = {d['id']: d["snippet"]['title'] for d in cat_js["items"]} 
    for item in items: 
     yield item["snippet"]["title"], categories[item["snippet"]["categoryId"]] 

Ich habe die oben genannte Funktion, um die Youtube-Kategorie und den Video-Namen zu erhalten. Gibt es eine Möglichkeit, das Genre eines Musikvideos zu erhalten, also Pop, Rock, House usw.? Bitte helfen Sie!Holen Sie sich ein Genre von youtube ID

Antwort

5

Ich weiß nicht, ob das Genre markiert ist - wahrscheinlich nicht.

Wenn nicht, würde ich zwei Optionen vorschlagen.

Einfach ein:

  • eine Liste von Musikgenres Get (here zum Beispiel, aber Sie können Sie entsprechend Ihre Aufgabe definieren)
  • Jedesmal, wenn Sie den Titel erhalten, trennen Sie den Namen des Künstlers und die Musik Name
  • Frage wikipedia mit dem Künstlernamen und prüfen, ob einige Musikrichtungen zitiert werden.
  • Falls vorhanden, frage wikipedia mit dem Textnamen ab, um zu überprüfen, ob Genres zitiert werden.

PS: Sie können andere Website bei Bedarf zitieren (genauer zum Beispiel). Als weitere Open-Source-Datenbank, überprüfen Sie http://musicbrainz.org/, die Tags für jeden Künstler bereitstellt. Sie müssen die Abfrage auf diesen Seiten definitiv automatisieren - was bei Wikipedia einfach ist, also der erste Vorschlag (check that).

Fest ein:

  • einen Trainingssatz von Musik mit ihrem Genre
  • Extract Audiofunktionen
  • Zug ein Klassifikator mit den bisherigen Funktionen
  • Classify all neue Musik dank gekennzeichnet Get Dieser Klassifikator (Zum Beispiel für eine gegebene Musik, assoziiere eine Wahrscheinlichkeit mit jedem Genre - und definiere Thresold (s), um einige von ihnen zu behalten)
  • Wenn gut gemacht, werden von großen Musikunternehmen angestellt - einige haben mit nicht-so guten Ergebnissen versucht
+0

Danke für die Antwort. Aber enthält youtube nicht auch das Genre-Feld? Ich erinnere mich an Listen von Songs nach Genre auf meiner Homepage. – Blabber

+0

Weil, wenn youtube API es zur Verfügung stellen kann, ich nicht so viel Kratzen getan hätte. – Blabber

+0

[Hier] (https://developers.google.com/youtube/2.0/developers_guide_protocol_category_keyword_browsing), [hier] (http://stackoverflow.com/questions/17698040/youtube-api-v3-where-cani-i- find-a-list-of-videocategoryid) und [hier] (http://stackoverflow.com/questions/6453917/get-the-music-genres-in-youtube) was ich bei Google-In gefunden habe Fall Sie versucht haben, welches Problem (s) sind Sie aufgetreten? Ich habe Ihre Frage möglicherweise falsch verstanden –

Verwandte Themen