ruby で rss auto-discovery のリンク先を取得する
#!/usr/bin/env ruby
require 'rubygems'
require 'open-uri'
require 'pp'
require 'scrapi'
def find_rss_links content
links = []
Scraper.define do
def initialize *args
super
@attributes = [];
end
process 'link' do |element|
@attributes << element.attributes
end
attr_reader :attributes
end.scrape(content).attributes.each {|link|
next unless link['type']
case link['type'].downcase
when 'application/rss+xml', 'application/atom+xml'
links << link
end
}
links
end
pp find_rss_links(open(ARGV.shift).read)
scrapi を使ってみた。 うまく動いてるっぽい。 でも、もっと簡潔に書けそうな気がする。

コメントする