😽 yumenomatayume.log

Bandcamp で購入した曲を一括で DL する

よく Bandcamp で曲を買いますが、一括で DL できなくて困っています。

画像が読み込まれない場合はページを更新してみてください。

上記の画像にある通り、一つ一つ「ダウンロード」をクリックする必要があります。

たまにディスコグラフィティー(リリースされたアルバムや曲のまとめ)を買うのですが、DL がとてつもない数(時には 100 を超える)になり、「これをぽちぽちクリックして DL させるなんて正気の沙汰ではない」と思い始めたので、無理やり力技で一括 DL して楽をしたいと思います。

利用するもの
  • Web ブラウザ
    • Google Chrome
  • ダウンローダー
    • Synology NAS の Download Station

ダウンローダーは、複数の URL を入力して DL 可能なものであれば大丈夫です。

一括 DL 方法
Chrome 拡張機能を使う方法

Link Grabber という Chrome 拡張機能を使うと、Web ページ内にあるリンクが全てリスト化されます。

Bandcamp 購入後のページで使用すると以下のようになります。

画像が読み込まれない場合はページを更新してみてください。

この中から DL する URL を抽出します。

html から抽出する方法

bandcamp で曲を購入した後のページに移動します。移動したら Chrome のデベロッパーツールを開き Elements タブに移動します。この html から DL リンクの一覧を抽出しようと思います。

画像が読み込まれない場合はページを更新してみてください。

<div class=”download"> の中の <ul> に、ダウンロードするアイテムの一覧があります。さらにこの中を見ていくと、<div class=”format-container”> があり、その中には <span><a href="DL リンクの URL"> タグがあることが分かります。

この URL を DL するアイテム分だけ取得して、テキストファイルに保存しておきます。

<ul class="downloads"> のコードを選択してコピペ(CTRL+C)します。するとその下の階層のコードが全てコピペされます。

ここでは、コピペした内容を downloads.html というファイルに保存します。

あとは適当なシェル芸を用いて url だけ抽出します。

❯ grep '<a class="item-button"' downloads.html | | cut -f 8 -d '"'
https://p4.bcbits.com/download/album/1b3807876f4b3176f326858cce590da2f/mp3-320/3783528176?id=3783528176&amp;sig=805f41a9e435f100eebf911dc60122c4&amp;sitem_id=214863294&amp;token=1665584821_d8a63afajs7897fsaf0d066ea2650c8fdd094676
https://p4.bcbits.com/download/album/11619baaee7d86b34056e58d0211468f0/mp3-320/4115599833?id=4115599833&amp;sig=019cfce27d467c0785dd1daa16e09ccf&amp;sitem_id=214863298&amp;token=1665584857_bbbfdsa7890aflkr314r908u9aujfao980756017

# snip...
URL から一括で DL する

URL 一覧を抽出できたので、あとは Download Station にぶち込みます。「URL を入力」に URL の一覧をコピペして「OK」をクリックしましょう🔥

一度に読み込める URL は 50 個までなので、多い場合は何回かに分けて読み込みます。

画像が読み込まれない場合はページを更新してみてください。

ファイルが多すぎるせいか途中で何度かエラーが出ました 🤣

画像が読み込まれない場合はページを更新してみてください。

成功するまで何度かリトライして DL 完了しました。

画像が読み込まれない場合はページを更新してみてください。

今回購入したものが 44 アイテムあったので、全て完了していることを確認します。

さいごに

Bandcamp 側で複数 DL に対応してほしいです。。。

👍