2009-10-12 8 views
1

Comment récupérez-vous le contenu de meta name = "description" content = "....." avec Scrubyt?Scrubyt récupérer les métadonnées

require 'rubygems' 
require 'scrubyt' 


data = Scrubyt::Extractor.define do 
    fetch 'http://www.allegro.pl/' 

    head '//head' do 
    description '//meta[@name="description"]' 
    end 
end 

puts data.to_xml 

Quelle est la bonne façon?

+0

J'ai seulement eu des problèmes quand j'ai essayé d'utiliser scrubyt ... avez-vous jeté un coup d'oeil à http://railscasts.com/episodes/173-screen-scraping-with-scrapi –

Répondre

2

Si vous voulez que la valeur de l' attribut essayer le contenu :

head '//head' do 
    description '//meta[@name="description"]/@content' 
end 

//meta[@name="description"] sélectionne la balise meta dont nom attribut est égal à « description », mais vous devez également sélectionner la valeur de l'attribut contenu.

+0

Exactement, d'où connaissez-vous le tour ? – astropanic

+0

Il s'agit d'une syntaxe standard pour sélectionner les valeurs d'attribut utilisées par Scrubyt. Ce que vous faites est également similaire à l'exemple sur http://github.com/scrubber/scrubyt_examples/blob/master/favicon.rb qui obtient l'URL favicon à partir d'une page. – mikej

Questions connexes