Nokogiri を使って HTML のソース解析を簡単にやってみたのでメモ。
まずはインストール。
# これがないと Nokogiri インストール時にエラーになる
$ sudo aptitude install libxml2-dev libxslt1-dev
# Nokogiri をインストール
$ sudo gem install nokogiri
そして、使い方。
require 'rubygems'
require 'open-uri'
require 'nokogiri'
# この open メソッドのために open-uri を require する
html = Nokogiri::HTML(open(url))
# XPath で指定する(css セレクタよりも個人的には XPath の方が好み。)
options = html.search("//div[@id='summary']/select[@class='prefectures']/option")
# 対応する要素がない場合、空が帰ってくる
if options.length.zero?
puts "データがありません"
else
options.each do |option|
# 属性値の取得とテキストの取得
puts "#{option.attribute('value')} : #{option.text}"
end
end
DOM がわかってれば簡単だ。
Nokogiri の使い方については
コチラが簡潔わかりやすいと思う。
0 件のコメント :
コメントを投稿