Billboard.py ist eine Python -API für den Zugriff auf Musikdiagramme von billboard.com.
Mit PIP einbauen:
pip install billboard.py
Oder klonen Sie dieses Repo und führen Sie python setup.py install
aus.
Um ein Billboard -Diagramm herunterzuladen, verwenden wir den Constructor ChartData()
.
Lassen Sie uns das aktuelle Hot 100 -Diagramm abrufen.
>> > import billboard
>> > chart = billboard . ChartData ( 'hot-100' )
>> > chart . title
'The Hot 100'
Jetzt können wir uns die Diagrammeinträge ansehen, die vom Typ ChartEntry
vom Typ Chartentry sind und Attribute wie artist
und title
haben:
>> > song = chart [ 0 ] # Get no. 1 song on chart
>> > song . title
'Nice For What'
>> > song . artist
'Drake'
>> > song . weeks # Number of weeks on chart
2
Wir können auch das gesamte Diagramm print
:
>>> print(chart)
hot-100 chart from 2018-04-28
-----------------------------
1. 'Nice For What' by Drake
2. 'God's Plan' by Drake
3. 'Meant To Be' by Bebe Rexha & Florida Georgia Line
4. 'Psycho' by Post Malone Featuring Ty Dolla $ign
5. 'The Middle' by Zedd, Maren Morris & Grey
# ...
Diese Seite zeigt alle nach Kategorien gruppierten Diagramme.
Jahrend-Charts sind hier.
Verwenden Sie den ChartData
-Konstruktor, um ein Diagramm herunterzuladen:
ChartData ( name , date = None , year = None , fetch = True , timeout = 25 )
Die Argumente sind:
name
-Der Diagrammname zB 'hot-100'
oder 'pop-songs'
.date
-Das Diagrammdatum als Zeichenfolge im yyyy-mm-dd-Format. Standardmäßig ist das neueste Diagramm abgerufen.year
-Das Diagrammjahr, wenn er ein Jahrend-Diagramm beantragt. Muss eine Saite im YJJJ -Form sein. Kann nicht sowohl date
als auch year
liefern.fetch
- Ein Boolescher Angabe, das sofort die Diagrammdaten von billboard.com abrufen soll (zur Instanziierung). Wenn False
, können die Diagrammdaten zu einem späteren Zeitpunkt mit der Methode fetchEntries()
bevölkert werden.max_retries
- Die maximale Anzahl der Male zum Wiederholen bei der Anforderung von Daten (Standard: 5).timeout
- Die Anzahl der Sekunden, um auf eine Serverantwort zu warten. Wenn None
, wird keine Auszeit angewendet.Zum Beispiel zum Herunterladen der alternativen Songs-Jahres-End-Diagramme für 2006:
>> > chart = billboard . ChartData ( 'alternative-songs' , year = 2006 )
Wenn chart
eine ChartData
-Instanz ist, können wir das Attribut für entries
anfordern, um die Diagrammeinträge (siehe unten) als Liste zu erhalten.
Für die Bequemlichkeit entspricht chart[x]
chart.entries[x]
, und ChartData
-Instanzen sind iterbar.
Ein Diagrammeintrag (typischerweise ein einzelner Track) ist vom Typ ChartEntry
. Eine ChartEntry
-Instanz hat die folgenden Attribute:
title
- Der Titel des Tracks.artist
- Der Name des Künstlers, wie auf billboard.com formatiert.image
- Die URL des Bildes für die Spur.peakPos
- Die Spitzenposition des Tracks im Diagramm zum Zeitpunkt des Diagrammdatums als INT (oder None
, wenn das Diagramm diese Informationen nicht enthält).lastPos
- Die Position des Tracks in der Tabelle der Vorwoche als INT (oder None
, wenn das Diagramm diese Informationen nicht enthält). Dieser Wert ist 0, wenn der Track nicht in der Tabelle der Vorwoche war.weeks
- die Anzahl der Wochen, die der Track in der Tabelle war oder stand, einschließlich zukünftiger Daten (bis heute).rank
- Die aktuelle Position der Spur in der Tabelle.isNew
- ob der Track neu im Diagramm ist. Weitere Dokumentationen finden Sie in der Datei billboard.py
oder verwenden Sie die interaktive help
von Python.
Denken Sie, Sie haben einen Fehler gefunden? Erstellen Sie hier ein Problem.
Pull -Anfragen sind willkommen! Bitte halten Sie die folgenden Richtlinien zum Stil:
pre-commit install
aus, um einen Pre-Commit-Hook zu installieren, der schwarz ausgeführt wird.mixedCase
sein.Um die Testsuite lokal auszuführen, installieren Sie die Nase und laufen Sie
nosetests
Um die Testsuite lokal sowohl auf Python 2.7 als auch auf 3.4 auszuführen, installieren Sie Tox und laufen Sie
tox
Projekte und Artikel, die Billboard verwenden.py:
Haben Sie eine Ergänzung? Machen Sie eine Pull -Anfrage!