== livedoor-feeddiscover - The fastest feed auto-discovery
=== DESCRIPTION
livedoor-feeddiscover performs feed autodiscovery using the livedoor Feed Discover API.
livedoor Feed Discover API find a Atom/RSS feed(s) from the livedoor Reader crawler database.
So, livedoor-feeddiscover do not access the target URL.
=== SYNOPSIS
require "rubygems"
require "livedoor/api/feed_discover"
find feed of matz blog.
matzblog = Livedoor::API::FeedDiscover.find(
"http://www.rubyist.net/~matz/",
"User-Agent" => "YourCoolApp/1.0 (+http://your.cool.app)")
if matzblog.feeds?
puts matzblog.feed.source # specified argument
puts matzblog.feed.link # blog link
puts matzblog.feed.feedlink # feed link
puts matzblog.feed.image # blog logo (channel image)
puts matzblog.feed.icon # favicon
puts matzblog.feed.title # blog title (UTF-8 string)
puts matzblog.feed.description # blog description (UTF-8 string)
puts matzblog.feed.official? # auto discover-able?
puts matzblog.feed.thirdparty? # thirdparty feeds? (not official)
puts matzblog.feed.subscribers_count # subscribers in livedoor Reader
puts matzblog.feed.avg_rate # average rate in livedoor Reader
end
FeedDiscover.find can take multiple links (max 1000).
feedlist = Livedoor::API::FeedDiscover.find("http://rubyforge.org/", "http://raa.ruby-lang.org/")
puts feedlist.feedlinks
generate OPML for Japanese rubyist blogs linked from Ruby hotlinks.
RUBY_HOT_LINKS = "http://www.rubyist.net/~kazu/samidare/"
rubyist_jp = Livedoor::API::FeedDiscover.find_from(RUBY_HOT_LINKS)
open("rubyist-jp.opml", "w") do |w|
w.puts rubyist_jp.opml
end
rubyist_jp.each do |feed|
puts feed.link
puts " ==> #{feed.feedlink} (#{feed.thirdparty? ? 'thirdpary' : 'official'})"
end
=== DEFAULT USERAGENT
livedoor-feeddiscover/x.y.z (+http://feeddiscoverapi.rubyforge.org)
=== BENCHMARK
vs feed-discover[http://rubyforge.org/projects/feed-discover/].
ruby examples/benchmark.rb
Start auto-discover for 4 blogs ------------------------------------
http://www.rubyist.net/~matz/
http://rubyforge.org/
http://raa.ruby-lang.org/
http://jruby.codehaus.org/
user system total real
feed-discover 5.234000 0.234000 5.468000 ( 13.797000)
livedoor-feed-discover 0.000000 0.000000 0.000000 ( 0.078000)
Results ------------------------------------------------------------
feed-discover: found 3 feeds.
livedoor-f-d: found 3 feeds.
Diffs --------------------------------------------------------------
http://www.rubyist.net/~matz/
feed-discover: http://www.rubyist.net/~matz/comments.rdf, http://www.rubyist.net/~matz/index.rdf
livedoor-f-d: http://www.rubyist.net/~matz/index.rdf
=== REQUIREMENTS
=== SEE ALSO
=== INSTALL
[Unix]
sudo gem install -y livedoor-feeddiscover
[Windows]
gem install -y livedoor-feeddiscover
=== COPYRIGHT
Copyright (c) 2007 MIYAMUKO Katsuyuki.
livedoor-feeddiscover is released under an MIT license.
See {License.txt}[link:files/License_txt.html] for full license.
=== OTHER STUFF
Author:: MIYAMUKO Katsuyuki mailto:miyamuko@gmail.com
Home URL:: http://feeddiscoverapi.rubyforge.org
Project URL:: http://rubyforge.org/projects/feeddiscoverapi
Blog (Japanese):: {id:miyamuko}[http://d.hatena.ne.jp/miyamuko/]