Разбор веб-страницы с некоторыми HTML-тегами с использованием Nokogiri - PullRequest
0 голосов
/ 25 апреля 2011

Например:

content=Nokogiri::HTML(open(url)).at_css(".appwindow").text

Этот пример разбора текста из .appwindow (только текст). Как я могу разобрать этот текст с тегом <p>?

1 Ответ

0 голосов
/ 26 апреля 2011

Я думаю, что вы хотите найти полный HTML-код первого элемента, который имеет класс appwindow, или, возможно, внутренний HTML-код.Если это так:

require 'nokogiri'
html = Nokogiri::HTML <<ENDHTML
  <div id='menu'>menu</div>
  <div class='appwindow'><p>Hello <b>World</b>!</p></div>
ENDHTML

puts html.at_css('.appwindow').text
#=> Hello World!

puts html.at_css('.appwindow').to_html
#=> <div class="appwindow"><p>Hello <b>World</b>!</p></div>

puts html.at_css('.appwindow').inner_html
#=> <p>Hello <b>World</b>!</p>

См. Список методов в Nokogiri::XML::Node для других доступных вариантов.

...