require 'rss/0.9'
require 'open-uri'
require 'rdoc/template'
require 'net/ftp'
TEMPLATE = %{
<div class="blogentries">
START:entries
<div class="blogentry">
<a href="%link%">
<span class="blogentrytitle">%title%</span>
</a>
<div class="blogentrydescription">
%description%
</div>
</div>
END:entries
</div>
}
TMP_FILE = "/tmp/topfive"
BLOG_URL = ARGV[0] || fail "Missing URL"
open(BLOG_URL) do |http|
result = RSS::Parser.parse(http.read, false)
entries = result.items.map do |item|
{
'title' => item.title,
'link' => item.link,
'description' => item.description
}
end
File.open(TMP_FILE, "w") do |f|
t = TemplatePage.new(TEMPLATE)
t.write_html_on(f, 'entries' => entries)
end
end
Net::FTP.open('www.pragmaticprogrammer.com') do |ftp|
ftp.login('user, 'passwd')
ftp.chdir('starter_kit/au')
ftp.put(TMP_FILE, 'topfive', 1024)
end