billboard.pyは、billboard.comの音楽チャートにアクセスするためのPython APIです。
PIPでインストール:
pip install billboard.py
または、このリポジトリをクローンして、 python setup.py install
を実行します。
ビルボードチャートをダウンロードするには、 ChartData()
コンストラクターを使用します。
現在のホット100チャートをフェッチしましょう。
>> > import billboard
>> > chart = billboard . ChartData ( 'hot-100' )
>> > chart . title
'The Hot 100'
これで、チャートエントリを見ることができます。チャートエントリは、タイプのChartEntry
であり、 artist
やtitle
などの属性を持つことができます。
>> > 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
チャート全体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
# ...
このページは、カテゴリごとにグループ化されたすべてのチャートを示しています。
年末のチャートはこちらです。
ChartData
コンストラクターを使用して、チャートをダウンロードしてください。
ChartData ( name , date = None , year = None , fetch = True , timeout = 25 )
議論は次のとおりです。
name
- チャート名、 'hot-100'
または'pop-songs'
など。date
- yyyy-mm-dd形式の文字列としてのチャート日付。デフォルトでは、最新のチャートがフェッチされています。year
- 年末のチャートをリクエストする場合、チャート年。 yyyy形式の文字列でなければなりません。 date
とyear
両方を供給することはできません。fetch
- billboard.comからチャートデータをすぐに(インスタンス化時に)取得するかどうかを示すブール。 False
の場合、 fetchEntries()
メソッドを使用して、後でチャートデータを入力できます。max_retries
- データを要求するときに再試行する最大回数(デフォルト:5)。timeout
- サーバーの応答を待つための秒数。 None
場合、タイムアウトは適用されません。たとえば、2006年の代替曲の年末チャートをダウンロードするには:
>> > chart = billboard . ChartData ( 'alternative-songs' , year = 2006 )
chart
がChartData
インスタンスの場合、そのentries
属性を要求して、チャートエントリ(以下を参照)をリストとして取得できます。
便利なため、 chart[x]
chart.entries[x]
に相当し、 ChartData
インスタンスは反復可能です。
チャートエントリ(通常、単一のトラック)は、タイプChartEntry
です。 ChartEntry
インスタンスには、次の属性があります。
title
- トラックのタイトル。artist
- billboard.comでフォーマットされたアーティストの名前。image
- トラックの画像のURL。peakPos
- チャート日時点でのチャート上のトラックのピーク位置は、INTとして(または、チャートにこの情報が含まれていNone
場合)。lastPos
- 先週のチャートでのトラックの位置は、INTとして(または、チャートにこの情報が含まれていNone
場合)。トラックが前週のチャートにない場合、この値は0です。weeks
- 将来の日付を含む(現在まで)、トラックがチャートにある週数。rank
- チャート上のトラックの現在の位置。isNew
- トラックがチャートにとって新しいかどうか。追加のドキュメントについては、ファイルbillboard.py
をご覧になるか、Pythonのインタラクティブhelp
機能を使用してください。
バグを見つけたと思いますか?ここで問題を作成します。
プルリクエストは大歓迎です!次のスタイルのガイドラインを遵守してください。
pre-commit install
実行して、ブラックを実行する事前コミットフックをインストールします。mixedCase
にある必要があります。テストスイートをローカルに実行するには、鼻を取り付けて実行します
nosetests
Python 2.7と3.4の両方でテストスイートをローカルに実行するには、TOXをインストールして実行します
tox
billboard.pyを使用するプロジェクトと記事:
追加がありますか?プルリクエストを行います!