Как не выйти из HTML в Nokogiri Ruby, так и остается и и не &

У меня есть заголовок doc.at('head/title').inner_html это выходит & и это должно быть &.

Мой оригинал документа:

<head><title>Foo & Bar</title></head>

но в выходит как следующее:

>> doc = Nokogiri::HTML.parse(file, nil, "UTF-8")
>> doc.at('head/title')
=> #<Nokogiri::XML::Element:0x..fdb851bea name="title" children=#<Nokogiri::XML::Text:0x..fdb850808 "Foo & Bar">>
>> doc.at('head/title').inner_html
=> "Foo &amp; Bar"

Я не хочу использовать Iconv или CGI как:

>> require 'cgi'
>> CGI.unescapeHTML(doc.at('head/title').inner_html)
=> "Foo & Bar"

это ужасно и неудобно.

5
задан pgericson 16 August 2012 в 11:32
поделиться

1 ответ

Для получения содержимого в виде простого текста вместо (X)HTML используйте content вместо inner_html.

irb(main):011:0> doc.at('head/title').content
=> "Foo & Bar"
7
ответ дан 14 December 2019 в 08:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: