2009-10-12 1 views
1

Как вы получаете содержимое мета-имени = "description" content = "....." с помощью Scrubyt?Scrubyt fetch metadata

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 

Каков правильный путь?

+0

У меня были проблемы, когда я пытался использовать scrubyt ... вы видели http://railscasts.com/episodes/173-screen-scraping-with-scrapi –

ответ

2

Если вы хотите, чтобы значение содержимого атрибута попробовать:

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

//meta[@name="description"] выбирает мета тег, чье имя атрибута равно «описание», но тогда вам также необходимо выбрать значение содержание атрибут.

+0

Точно, откуда вы знаете трюк? – astropanic

+0

Это стандартный синтаксис для выбора значений атрибутов, которые использует Scrubyt. То, что вы делаете, также похоже на пример на http://github.com/scrubber/scrubyt_examples/blob/master/favicon.rb, который получает URL-адрес favicon со страницы. – mikej

 Смежные вопросы

  • Нет связанных вопросов^_^