●Ruby で HTTP クライアントを作るのに、最も手軽な方法としてopen-uriライブラリを利用します。
require "open-uri"
open("http://www.example.com/"){|f|
print f.read
}
●open-uriライブラリよりも細かい操作を行ないたいときには、net/httpライブラリを使用します。(例えばPOSTリクエストを送りたいとき)
require "net/http"
require "uri"
url = URI.parse("http://www.ruby-lang.org/ja/")
p url.scheme
p url.host
p url.port
p url.path
p url.to_s
http = Net::HTTP.start(url.host, url.port)
doc = http.get(url.path)
puts doc
●nokogiriを使ってHTMLを解析するには例えば以下のようにします。
require 'rubygems'
require 'open-uri'
require 'nokogiri'
doc = Nokogiri::HTML(open('http://www.google.co.jp/search?q=cofe_arabi'))
#doc.xpath('//h3/a[@class="l"]').each do |link|
doc.xpath('//h3/a').each do |link|
puts link.content
end
require 'rubygems'
require 'open-uri'
require 'nokogiri'
doc = Nokogiri::HTML(open("http://www.ruby-lang.org/ja/"),nil,"utf-8")
doc.css("h3").each do |h3|
puts h3.text
end
0 件のコメント:
コメントを投稿