<SiteTitle>UTAU楽曲データベース</SiteTitle>
<SiteSearchURL>[TITLE] site:www24.atwiki.jp/utauuuta/</SiteSearchURL>
<LuaScript>
function LyricsInfoGet(html)
--歌詞を取り出す
is1, ie1 = html:find("<h3 id=\"id_%w+\">歌詞</h3>",1)
--無いときは抜ける
if is1 == nil then
return
end
--歌詞の終わりを見つける
is2, ie2 = html:find("<h3", ie1+1, 1)
is2_,ie2_= html:find("<h4", ie1+1, 1)
if is2_~=nil and is2 > is2_ then
is2, ie2 = is2_, ie2_
end
is2_,ie2_= html:find("<table", ie1+1, 1)
if is2_~=nil and is2 > is2_ then
is2, ie2 = is2_, ie2_
end
lyrics = html:sub(ie1+1, is2-1)
--転載注釈を外す
is1, ie1, kakko = lyrics:find("(%b())")
if is1 ~= nil then
if kakko:find("転載") or kakko:find("動画") or kakko:find("ブログ") or kakko:find("歌詞") or kakko:find("書き起こし") or kakko:find("抜粋") or kakko:find("PV") then
lyrics = lyrics:sub(1, is1-1) .. lyrics:sub(ie1+1, -1)
end
end
is1,ie1,kakko = lyrics:find("((.-))")
if is1 ~= nil then
if kakko:find("転載") or kakko:find("動画") or kakko:find("ブログ") or kakko:find("歌詞") or kakko:find("書き起こし") or kakko:find("抜粋") or kakko:find("PV") then
lyrics = lyrics:sub(1, is1-1) .. lyrics:sub(ie1+1, -1)
end
end
--HTMLテキストのdiv,改行,ルビ等を消す
--\n\n</div>は改行とする
lyrics = lyrics:gsub("\n\n</div>", "<br />")
lyrics = lyrics:gsub("<div>", "")
lyrics = lyrics:gsub("</div>", "")
lyrics = lyrics:gsub("\n", "")
lyrics = lyrics:gsub("<rt>.-</rt>", "")
lyrics = lyrics:gsub("<rp>.-</rp>", "")
lyrics = lyrics:gsub("<rb>", "")
lyrics = lyrics:gsub("</rb>", "")
lyrics = lyrics:gsub("<ruby>", "")
lyrics = lyrics:gsub("</ruby>", "")
lyrics = lyrics:gsub("<span.->", "")
lyrics = lyrics:gsub("</span>", "")
lyrics = lyrics:gsub("<!\-\-.-\-\->", "")
lyrics = lyrics:gsub("<a .->", "")
lyrics = lyrics:gsub("</a>", "")
lyrics = lyrics:gsub("<p>", "")
lyrics = lyrics:gsub("</p>", "")
lyrics = lyrics:gsub("<font .->", "")
lyrics = lyrics:gsub("</font>", "")
lyrics = lyrics:gsub("<big>", "")
lyrics = lyrics:gsub("</big>", "")
lyrics = lyrics:gsub("<small>", "")
lyrics = lyrics:gsub("</small>", "")
lyrics = lyrics:gsub("<b>", "")
lyrics = lyrics:gsub("</b>", "")
lyrics = lyrics:gsub("<i>", "")
lyrics = lyrics:gsub("</i>", "")
lyrics = lyrics:gsub("<s>", "")
lyrics = lyrics:gsub("</s>", "")
lyrics = lyrics:gsub("<strike>", "")
lyrics = lyrics:gsub("</strike>", "")
lyrics = lyrics:gsub("<u>", "")
lyrics = lyrics:gsub("</u>", "")
lyrics = lyrics:gsub("<tt>", "")
lyrics = lyrics:gsub("</tt>", "")
lyrics = lyrics:gsub("<em>", "")
lyrics = lyrics:gsub("</em>", "")
lyrics = lyrics:gsub("<strong>", "")
lyrics = lyrics:gsub("</strong>", "")
lyrics = lyrics:gsub("<sup>", "")
lyrics = lyrics:gsub("</sup>", "")
lyrics = lyrics:gsub("<sub>", "")
lyrics = lyrics:gsub("</sub>", "")
lyrics = lyrics:gsub("<blockquote>", "")
lyrics = lyrics:gsub("</blockquote>", "")
lyrics = lyrics:gsub("<q>", "")
lyrics = lyrics:gsub("</q>", "")
lyrics = lyrics:gsub("<pre>", "")
lyrics = lyrics:gsub("</pre>", "")
lyrics = lyrics:gsub("<code>", "")
lyrics = lyrics:gsub("</code>", "")
--<br />を改行にする
lyrics = lyrics:gsub("<br />", "\r\n")
--行頭と行末の改行を削除
while lyrics:sub(1,2) == "\r\n" do lyrics = lyrics:sub(3) end
while lyrics:sub(-2) == "\r\n" do lyrics = lyrics:sub(1,-3) end
--行末の空白文字を削除
lyrics = lyrics:gsub("\s-\r\n", "\r\n")
lyrics = lyrics:gsub(" -\r\n", "\r\n")
--特殊文字
lyrics = lyrics:gsub("<", "<")
lyrics = lyrics:gsub(">", ">")
lyrics = lyrics:gsub(" ", " ")
lyrics = lyrics:gsub(""", "\"")
lyrics = lyrics:gsub("&", "&")
--タイトルを取り出す
title = html:match("<h2>.-<a .->(.-)</a>.-</h2>")
--特殊文字
title = title:gsub("<", "<")
title = title:gsub(">", ">")
title = title:gsub(" ", " ")
title = title:gsub(""", "\"")
title = title:gsub("&", "&")
--アーティスト名を取り出す
artist = html:match("</h2>.-作曲.-<a.->(.-)</a>.-<h3")
--特殊文字
artist = artist:gsub("<", "<")
artist = artist:gsub(">", ">")
artist = artist:gsub(" ", " ")
artist = artist:gsub(""", "\"")
artist = artist:gsub("&", "&")
return "LYRICS="..lyrics, "TITLE="..title, "ARTIST="..artist
end
--2017.04.16
</LuaScript>