Ознакомьтесь с учебниками Нокогири.В частности, вы хотите прочитать «Изменение документа HTML / XML», Изменение текстового содержимого .
XML-средства доступа Nokogiri очень удобны, поскольку вам не нужно использовать XPath.Вы также можете использовать средства доступа CSS, и для людей, которые не работают в XML весь день, они могут сильно помочь.
В этом конкретном примере они используют метод at_css
, который ищетПервое появление цели.У вас есть много альтернативных методов, которые являются синонимами: at
, %
, at_css
и at_xpath
обрабатывают случаи "найти первый".search
, css
, xpath
, /
аналогичным образом обрабатывают «найти все вхождения».
Например:
require 'nokogiri'
html = '<h1>Snap, Crackle and Pop</h1>'
doc = Nokogiri::HTML(html)
h1 = doc.at('h1')
h1.content = h1.content[0, h1.content.length - 3] + '...'
puts doc.to_html
>> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
>> <html><body><h1>Snap, Crackle and ...</h1></body></html>
Это создает новый документ HTML в Nokogiri,ищет первый H1 и обрезает последние три символа в его содержимом, заменяя их многоточием.