이것은 귀하의 환경을 알지 못하기 때문에 반 답변이며 제공하는 코드는 단지 예일 뿐이며 해를 끼치 지 않아야하지만 보장 할 수는 없습니다.
이와 같은 작업은 간단한 bash 스크립트를 사용하여 처리 할 수 있습니다. 예를 들어 다음 예제에서는 eyeD3을 사용하여 아티스트와 제목을 추출한 다음 무료 위키 리믹스 미러를 사용하여 가사를 가져온 다음 eyeD3을 다시 사용하여 새 태그를 저장합니다. 동일한 코드를 계속해서 악용하는 것은 악의적 인 것으로 간주 될 수 있으므로이 코드를 사용하는 모든 사람이 다른 가사 API를 조회하는 것이 좋습니다.
#!/bin/bash
_TPL='http://makeitpersonal.co/lyrics?artist=<artist>&title=<title>'
_SRY="Sorry, We don't have lyrics for this song yet."
[ "$1" ] && _PATH="$1" || _PATH=$PWD
cd $_PATH
for _FILE in {*.mp3,*.m4a}; do
if [[ -r $_FILE ]]; then
_SONG=$(eyeD3 --no-color "$_FILE" | grep title)
_ARTIST="${_SONG#*"artist: "}"
_TITLE="${_SONG%"artist: "*}"
_TITLE="${_TITLE#"title: "}"
echo -n "$_ARTIST - $_TITLE"
_ARTIST="${_ARTIST// /+}"
_TITLE="${_TITLE// /+}"
_URL="${_TPL//"<artist>"/$_ARTIST}"
_URL="${_URL//"<title>"/$_TITLE}"
_LYRICS=$(wget -qO- $_URL)
if [ "$_LYRICS" != "$_SRY" ]; then
eyeD3 --lyrics=eng:Lyrics:"$_LYRICS" "$_FILE" 1>/dev/null
else
echo "No lyrics found... skipping!"
fi
fi
done
cd $OLDPWD
지침 (터미널에서 명령 실행) :
- 설치
wget
및 eyeD3
발급sudo apt-get install wget eyed3
- 위의 코드를 파일에 저장
/home/user/lyrics_fetcher.sh
- 파일을 실행할 수있는 권한을 추가하십시오.
chmod u+x /home/user/lyrics_fetcher.sh
- 파일을 실행하십시오 (따옴표를 명심하십시오).
/home/user/lyrics_fetcher.sh "path_to_my_album"
- ctrl+ 를 누르면 언제든지 스크립트 실행을 중지 할 수 있습니다c
Arctic Monkeys의 "AM"앨범으로이 코드를 확인한 결과 달콤했습니다.
한 번에 모든 앨범의 가사를 가져 오려면 각 디렉토리에 대해 루프에서 스크립트를 실행할 수 있습니다. 아직도, 나는 그것을 최종 솔루션으로 사용하지 않을 것입니다-위키 리릭 스와 미러링을 통해 그것을 지원하는 모든 사람은 좋은 사람 이며이 대답은 남용이 아닌 사고를 촉진하기 위해 여기에 있습니다.