Ruby on rails 如何使用Nokogiri查找页面上的文本
我正在尝试用Nokogiri找到在页面上查找单词的最佳方法 我有一个页面包含以下文本Ruby on rails 如何使用Nokogiri查找页面上的文本,ruby-on-rails,ruby,nokogiri,Ruby On Rails,Ruby,Nokogiri,我正在尝试用Nokogiri找到在页面上查找单词的最佳方法 我有一个页面包含以下文本 <p>Modelo: ABC123-A</p> Modelo:ABC123-A 我想找到“Modelo:文本,然后在它后面找到型号 我四处看了看,但似乎找不到。所以,我想我会在这里发帖子,看看是否有任何有过Nokogiri经验的人可以为我解释一下。一个简单的例子: doc = Nokogiri::HTML('<html><body><p>Model
<p>Modelo: ABC123-A</p>
Modelo:ABC123-A
我想找到“Modelo:文本,然后在它后面找到型号
我四处看了看,但似乎找不到。所以,我想我会在这里发帖子,看看是否有任何有过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
doc=Nokogiri::HTML(“Modelo:ABC123-A”)
doc.css('p').first.content#=>Modelo:ABC123-A
str.split(':')[-1]#=>ABC123-A
您也可以尝试,它比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"]
doc=Nokogiri::HTML(“Modelo:ABC123-A
这里什么都没有Modelo:4321”)
doc.css('p:contains(“Modelo”)).map{x | x.text.split(':').last}
#=>[“ABC123-A”,“4321”]
你为什么不使用watir
来做这项工作?很好,但这不只是一个测试吗?谢谢Mat,我会看看Oga。看起来很有趣。干杯,孩子们,我来试试这个:)