본문 바로가기

삽질

굿모닝 팝스 RSS 변환!

굿모닝 팝스를 매일 들으며 rss를 통해서 팟캐스트로 스마트폰으로 가끔식 듣고 있었는데 어느세 KBS에서 tune이라는 서비스를 하면서 별도의 ActiveX 를 이용해서만 다운이 되더군요. 그래서 오늘 잠깐 독서실을 째고 루비로 만들어 봤습니다.

일단 Wireshark를 이용해서 tune으로 굿모닝 팝스 mp3 url을 패킷캡처해서 알아냈습니다. 아주 간단하더군요. 그리고 우리의 무료 Ruby 호스팅 사이트인 Heroku의 개발용 사이트인 Herokugarden 에서 간단하게 mp3를 다운받을 수 있는 RSS를 만들었습니다.
require 'net/http'
require 'uri'
require 'rexml/document'
 
class RssController < ApplicationController
  
  def gmp
    @article = []
    xml_data = Net::HTTP.get(URI.parse('http://tune.kbs.co.kr/program/rss.php?pgNo=1'))
    doc = REXML::Document.new(xml_data)
    doc.elements.each('rss/channel/lastBuildDate') do | e |
      @lastBuildDate = e.text
    end
    
    doc.elements.each('rss/channel/item/title') do | ele |
      item = Hash.new
      item['title'] = ele.text
      item['url'] = 'http://211.233.94.167/danpod/mp3/2fm/gmp_' + ele.text[-11 .. -2 ].tr('/', '') + '_down.mp3'
      @article << item
    end
    render :layout => false
  end
 
end
View 는 RSS를 생성합니다.
  
    
    http://tune.kbs.co.kr
    KBS RADIO TUNE RSS 서비스
    ko
    
    
      
        
        <a href="">MP3 Download</a>
        Nov, 29 1999 15:00:00 GMT
      
    
  

title 태그를 티스토리에서 거르는군요 -_-;;;  위의 소스코드에서 공백은 RSS의 TITLE태그입니다.

이렇게 해도 되는지 모르겠습니다. http://gmprss.ggungs.com/