如何使用 Nokogiri 在页面上查找文本
How to find text on a page using Nokogiri
我正在尝试寻找使用 Nokogiri 在页面上查找单词的最佳方法。
我有一个包含以下文本的页面。
<p>Modelo: ABC123-A</p>
我想找到"Modelo:"的文字,然后得到后面的型号。
我环顾四周但似乎找不到。所以,我想我会 post 在这里,看看是否有任何有 Nokogiri 经验的人可以为我阐明这一点。
一个简单的例子:
doc = Nokogiri::HTML('<html><body><p>Modelo: ABC123-A</p></body></html>')
doc.css('p').first.content # => Modelo: ABC123-A
str.split( ': ' )[-1] # => ABC123-A
你也可以试试Oga,比Nokogiri轻
使用p:contains
选择器并获取匹配的p
节点。
doc = Nokogiri::HTML('<html><body><p>Modelo: ABC123-A</p><br/><p>Nothing here</p><p>Modelo: 4321</p></body></html>')
doc.css('p:contains("Modelo")').map { |x| x.text.split(': ').last }
#=> ["ABC123-A", "4321"]
我正在尝试寻找使用 Nokogiri 在页面上查找单词的最佳方法。
我有一个包含以下文本的页面。
<p>Modelo: ABC123-A</p>
我想找到"Modelo:"的文字,然后得到后面的型号。
我环顾四周但似乎找不到。所以,我想我会 post 在这里,看看是否有任何有 Nokogiri 经验的人可以为我阐明这一点。
一个简单的例子:
doc = Nokogiri::HTML('<html><body><p>Modelo: ABC123-A</p></body></html>')
doc.css('p').first.content # => Modelo: ABC123-A
str.split( ': ' )[-1] # => ABC123-A
你也可以试试Oga,比Nokogiri轻
使用p:contains
选择器并获取匹配的p
节点。
doc = Nokogiri::HTML('<html><body><p>Modelo: ABC123-A</p><br/><p>Nothing here</p><p>Modelo: 4321</p></body></html>')
doc.css('p:contains("Modelo")').map { |x| x.text.split(': ').last }
#=> ["ABC123-A", "4321"]