ネットラジオ取得スクリプト

いつも聞いてるネットラジオを取得するスクリプトbashからrubyに書き換えてみた。

#!/usr/bin/ruby -Ku
require 'open-uri'
require 'hpricot'
require "rexml/document"
downDir = "ダウンロードするディレクトリ"
def get_mms_uri()
html = Hpricot(open("対象のURI").read)
array = Array.new
(html/:a).each do |link|
URI.extract(link[:href]).grep(/asx/) do |asx|
array.push(asx)
end
end
asx = nil
open(array.shift) do |xmlfile|
asx = REXML::Document.new(xmlfile)
end
return asx.elements['/ASX/ENTRY/REF'].to_s.slice(/mms:..*\.wm[av]/)
end
def get_mms(uri, dir)
filename = uri.split(/\//).pop
if File.exist?("#{dir}/#{filename}") then
sleep(60 * 30) # 60秒 x 30 = 30 min
puts "sleep 30 min"
get_mms(uri, dir)
else
`mimms -q "#{uri}"  "#{dir}/#{filename}"`
end
end
get_mms(get_mms_uri,downDir)

スポンサーリンク

コメントをお待ちしております

HTMLタグはご利用いただけません。