[bglug] Lyric fetcher & tagger

Joe Galaxy joegalaxy@gmail.com
Mer 18 Gen 2012 17:48:58 CET


Ho provato le varie soluzioni, sia con python che con perl, ma non mi  
hanno soddisfatto, quindi sono passato ai metodi bruti.
Per taggare tutta la mia collezione ho perparato questo script, che  
scarica le liriche da lyricwiki e tagga i files.

Ecco qui lo script:

#!/bin/zsh
# Time-stamp: <lyricstagger, 18/1/2012 17:36:4 joe Exp>

cd $(dirname $1)

# set your comment
comment="ripped by Joe Galaxy"

# doit!
artist="`id3info $(basename $1) | grep performer | awk -F"): " '{print  
$2}' | sed 's/ /_/g'`"
song="`id3info $(basename $1) | grep songname | awk -F"): " '{print $2}' |  
sed 's/ /_/g'`"

w3m -dump -no-cookie http://lyrics.wikia.com/"$artist":"$song" |perl -e  
'BEGIN{$true = 0;} while(<>){if ($_ =~ /Rington\
e/){$true=$true?0:1} if ($true){print $_;} }' | tail -n+2 | sed  
's/\[...\]phone//' > "$(basename $1)".txt

id3v2 -C "$(basename $1)"

if [ -s "$(basename $1).txt" ]; then
id3 -2 -c "$comment" -wUSLT "`cat "$(basename $1)".txt`" "$(basename $1)"
autoload zmv
zmv -W '*.mp3.txt' '*.txt'
else
rm "$(basename $1)".txt
fi

Se volete taggare tutta la vostra cartella musica basterà dare un comando  
simile:

find $HOME/Music -name "*.mp3" -exec lyricstagger "{}" \;


-- 
$(echo 502625742692402704447754P|dc)@gmail.com


Maggiori informazioni sulla lista bglug