# サイトマップから内部リンクのリストを作る # ライブラリ"hpricot"を使う。HTMLのタグごとにエレメンツに分ける。 require "hpricot" # ライブラリ"open-uri"を使う。開いてHTMLを取る。 require "open-uri" # "http://eri.cheap.jp/site_map/index.htm"を「sitemapurl」という名前にする。 sitemapurl = "http://eri.cheap.jp/site_map/index.htm" # 「sitemapurl」をHTMLのタグごとのエレメンツに分けたもの全体を「doc」という名前にする。 doc = Hpricot(open(sitemapurl)) # 各エレメンツの中で、<a>タグで「href^=http://」のないものの全体を「list」という名前にする。 list = doc.search('a:not([@href^=http://])') # 「list」の1つずつを「link」と呼んで、 # 「link」の中の"href"属性を抜き出したものを「href」と呼んで、 # 「sitemapurl」から見た「href」をあわせて、絶対パスのURLにしたものを出力。 list.each{|link| href = link.get_attribute("href") puts URI.join(sitemapurl , href) }