2007년 2월 4일

네이버 뮤직에서 가사 긁어오는 루비 스크립트

네이버 뮤직에서 노래 가사를 긁어오는 루비 스크립트를 작성해 보았습니다. 아마록 음악 프로그램에서 한국 가요 가사를 긁어오는데 사용하고 있습니다. 웹에서 동작을 확인해 볼 수 있게 하기도 해 보았습니다.

따로 네이버의 API 등을 이용한 것은 아니고, 그저 HTTP Get을 한 결과를 바탕으로 정규식을 이용하여 가사를 추출해 해는 방식입니다. 처음부터 songid를 알 수 없기 때문에 검색 페이지에서 맨 위에 있는 노래의 songid를 알아내서 이 노래의 가사를 찾아내는 방식으로 동작합니다.

상당히 간단합니다. 다음에 나오는 lyric_naver.rb 파일에는 검색 결과를 간단히 html 형식으로 출력할 수 있는 함수도 제공합니다. 아마록에서 쓰는 스크립트는 이것을 이용하고, 추가로 아마록과 연결되는 처리, XML 쓰기 처리 등을 해 줍니다. 웹에서 쓰기 위해서는 간단히 getLyricHtml을 호출하기만 하여 뿌려주기만 하면 됩니다.

물론 스크립트에는 흠이 많습니다. 이상적으로는 국내가요와 외국 가요를 구분하여 각기 다른 곳에서 가사를 받아오면 좋겠지만, 일단은 이정도로만 해 둡니다.

댓글 없음: