2010-03-31 14 views

risposta

43

Non esiste ancora un parser HTML incorporato, ma alcuni sono disponibili, in particolare Nokogiri.

Meta-risposta: per esigenze comuni come queste, mi consiglia di controllare il sito Ruby Toolbox. Noterai che Nokogiri è la migliore raccomandazione per HTML parsers

9

Si consiglia di verificare hpricot. È straordinariamente buono. Non è un rubino "core", ma è una gemma comunemente usata.

+2

Hpricot purtroppo non c'è più. Nokogiri è ora la soluzione preferita. – superluminary

2

Ruby Cheerio - Un parser HTML in stile jQuery in rubino. Una versione semplificata di Nokogiri per i crawler. Questa è la versione rubino del pacchetto NodeJS più popolare cheerio.

Follow the link for a simple crawler example.

gem install ruby-cheerio

require 'ruby-cheerio' 

jQuery = RubyCheerio.new("<html><body><h1 class='one'>h1_1</h1><h1>h1_2</h1></body></html>") 

jQuery.find('h1').each do |head_one| 
    p head_one.text 
end 

# getting attribute values like jQuery. 
p jQuery.find('h1.one')[0].prop('h1','class') 

# function chaining similar to jQuery. 
p jQuery.find('body').find('h1').first.text 
+0

Ottimo approccio! Bella raccomandazione! Grazie a @dineshsprabu. –

+0

Grazie Fernando Kosh – dineshsprabu

Problemi correlati