かなり手抜きなので、タグ毎に正しく改行されていないとうまく動かない…かもしれない。
class WPLReader
def initialize(wplfile)
@file = wplfile
@head_meta = Hash.new
@head_data = Hash.new
@file_list = Array.new
end
def read
open(@file, "r") do |read|
while line = read.gets
read_head(read) if line =~ /<head>/i
read_body(read) if line =~ /<body>/i
end
end
end
def read_head(file)
while line = file.gets
@head_meta[$1] = $2 if line =~ /<meta name="(.*)" content="(.*)">/i
@head_data[$1] = $2 if line =~ /<(.*?)>(.*?)<\/\1>/i
break if line =~ /<\/head>/i
end
end
def read_body(file)
while line = file.gets
@file_list << $1 if line =~ /<media src="(.+)">/
break if line =~ /<\/body>/i
end
end
attr_reader :head_meta, :head_data, :file_list
end
このクラスを利用し、wplをm3uに変換するツールを作成。
文字コードの修正は行わないので、用途に合わせて修正してやる必要があるかも。
https://sites.google.com/a/g.hachune.net/mtmef/home/download/wpl-m3uConverter.zip?attredirects=0
…べっ、別にBlogのネタが切れたわけじゃないんだからね(´・ω・`)
0 件のコメント:
コメントを投稿