4

Web からアプリケーションにページを取得し、そのページで何らかの解析を行いたいとします。それ、どうやったら出来るの?どこから始めればよいですか?いくつかのプラグイン/宝石が必要ですか? そのようなタイプのタスクを解決する際に、あなたは通常どのような方法をとっていますか?

4

2 に答える 2

7

Hpricot ( wiki ) やNokogiriなどの Gem を試してみてください。

Hpricot の例:

require 'open-uri'
require 'rubygems'
require 'hpricot'

html = Hpricot(open(an_url).read)
# This would search for any images inside a paragraph (XPath)
html.search('/html/body//p//img')
# This would search for any images with the class "test" (CSS selector)
html.search('img.test')

のこぎり例:

require 'open-uri'
require 'rubygems'
require 'hpricot'

html = Nokogiri::HTML(open(an_url).read)
# This would search for any images inside a paragraph (XPath)
html.xpath('/html/body//p//img')
# This would search for any images with the class "test" (CSS selector)
html.css('img.test')

一般的にノコギリの方が速いです。どちらのライブラリも多くの機能を備えています。

于 2009-09-24T05:17:35.420 に答える
0

あなたがやりたいことは「スクレイピング」と呼ばれます

Ryan Bates は、このトピックに関する 2 つの優れたスクリーンキャストを作成しました。

個人的にはノコギリの方が好きです。次の回答も確認できます: Best Rails HTML Parser

于 2012-02-07T14:11:32.490 に答える