Domanda

Sto scrivendo un semplice web crawler in Ruby e ho bisogno di recuperare tutti i contenuti href sulla pagina. Qual è il modo migliore per farlo, o di qualsiasi altra analisi sorgente della pagina web, dal momento che alcune pagine potrebbero non essere validi, ma ho ancora voglia di essere in grado di analizzare loro.

Ci sono buoni parser HTML Rubino che permettono validità agnostico di analisi, o è il modo migliore solo per farlo a mano con espressioni regolari?

E 'possibile usare XPath sulla non-Valid pagina?

È stato utile?

Soluzione

Dai un'occhiata alla Nokogiri . breve esempio:

require 'open-uri'
require 'nokogiri'
doc = Nokogiri::HTML(open('http://www.google.com/search?q=tenderlove'))
doc.search('//*[@href]').each do |m| p m[:href] end

Altri suggerimenti

Date un'occhiata a Mechanize . Sono abbastanza sicuro che ha i metodi per afferrare tutti i link in una pagina.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top