すべての音楽ファイルを上書きし、それぞれのアルバムアートをダウンロードするPythonベースのアプリケーションを作成しています。 私はlast.fmのサイトからbeautifulsoup4を使ってアルバムアートをスクラップしています。album art grabber python
いい方法はありますか?時々私はサイトへのリクエストが多すぎることを除いているからです。 last.fm apiのように、私はスクラップの代わりに必要なものを提供します。
私はこれを見つけたが、私はそれを使用しようとしていないが、これは私が今のためにそれを行う方法です https://github.com/pylast/pylast
を必要として、それを使用することができると思ういけない:の
def getAlbumArt(songDet):
#create a search url according the name of the given song's album
try:
# deletes unnecessary words from the name
if songDet.albumName.rfind("(") != -1:
r = requests.get("http://www.last.fm/search?q="+songDet.albumName[:songDet.albumName.rfind("(")])
else:
r = requests.get("http://www.last.fm/search?q=" + songDet.albumName)
html = bs4.BeautifulSoup(r.content, "html.parser")
imagesLinks = html.find_all("ol")
r.close()
for imageLink in imagesLinks:
for image in imageLink.contents:
if type(image) is bs4.Tag:
if image.text.__contains__(songDet.artist):
# todo add path to save pic to the mp3 path
urllib.urlretrieve(image.find("img").attrs['src'], image.find("img").attrs[u'alt'] + ".jpg")
print "got a picture"
return True
#break
#break
except requests.RequestException as e:
print e
これは試しましたか?もしそうなら、あなたが持っているもののコードサンプルを提供できますか? –
私はそれを使用しようとしていないが、これは今のところ私が行う方法ですhttp://pastebin.ca/3583239 – Liran
ちょっと@Liran、次回あなたの質問にコードを追加してください。私は今度あなたのためにそれをしました。 –