問題
コンピューターからlast.fmトラックを簡単にスクレイピングします。 これには多くのプログラムがあります(たとえば、 Rhythmboxを使用します)。 しかし、私たちが聴く音楽のほとんどはモバイルデバイスで再生されます。 彼からサイトに音楽を送りたいです。
この場合、モバイルデバイスでインターネットを使用しないことをお勧めします。これは、第一に、どこからでもインターネットにアクセスできないため、そして第二に、安価ではないためです)
ソリューションのアイデア
私たちは、あなたが聴いている曲のログファイルを書くことができるモバイルデバイス上のプレーヤーを使用します(たとえば、私はMortPlayerを使用します )。 次に、このログファイルをコンピューターに転送し、以下で説明するPythonスクリプトを使用してLast.fmに送信します。
システム要件
1.モバイルデバイスには、聴く曲のログファイルを書き込むことができるプレーヤーが必要です。 ログファイルの形式は、「日-月-年時:分:2番目のアーティスト-作曲-アルバム」である必要があります。例:
2008-01-14 21:17:45ショーンポール-ライクグルー-デューティロック
2008-01-14 21:21:43ショーンポール-忙しい-デューティロック
コンピューターのその他の要件(フリーハンド):
2. Linux。
3. Last.fmプラグインを含むRhythmbox(最新バージョンではプログラムに付属していますが、サービスにアクセスするには、有効にしてログイン/パスワードを設定する必要があります)。
4. Python。
手続き
1.ログファイルをコンピューターに転送します(たとえば、コミュニケーターからメモリカードを挿入します)。
2. scrobbleスクリプトを実行します。
それだけです:)
スクリプトの「機能」
1. last.fmパーソナルページでトラックの外観を確認します(聴いたトラックのカウンターがチェックされます)。
2.リスニングカウンターを使用して、アーティストごとにグループ化されたリスニングされた曲のテーブルを提供する機能(たとえば、遠くから戻ってきて、休暇中によく聴いたものを確認したい場合)。
3. 1分以内に聞こえた曲をフィルタリングします。
スクリプトをダウンロードします(iFolder.ru)
コードを表示(dumpz.org、構文の強調表示と行番号付き) (ヒント、 Cyxapeffに感謝 )
構成パラメーター(ログファイルへのパスなど)は、スクリプトテキストの先頭に構成されます。
UPD 07/29/2008
Last.fmインターフェースの最近の更新に関連して、スクリプトを変更する必要があります。つまり、行219の正規表現
pattern = re.compile( '再生されたトラック:\ W * <\ / strong> \ W *(\ d +)、(\ d +)<\ / span> <\ / span>')
に置き換える必要があります
pattern = re.compile( '\((\ d +)、(\ d +)再生トラック\)')
-ハブでのS. tについての私の最初のPです。 厳しく判断しないでください。