ruby - 如何在偶数位置提取文本?

标签 ruby nokogiri

我正在使用返回 Nokogiri::XML::NodeSet 的 Nokogiri 提取页面。由此,我只想从偶数节点中提取文本。

doc.search("h2 a").class #=> Nokogiri::XML::NodeSet
doc.search("h2 a").count #=> returns 148

我对 0,2,4,8 等感兴趣:

doc.search("h2 a")[0].text #=> the one I wanted.
doc.search("h2 a")[2].text #=> the one I wanted.

最佳答案

尝试以下操作:

doc.search("h2 a").map.with_index(0) do |i,nd|
    i.text if nd.even?
end.compact

关于ruby - 如何在偶数位置提取文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17612143/

相关文章:

ruby - Dashing - 未初始化常量 Nokogiri 异常

ruby - 如何点击 Nokogori 或 Mechanize 的特定链接?

ruby - 使用 Nokogiri 提取链接时如何获取绝对 URL?

ruby - 在多个上下文之间传递变量的 rspec 方法

ruby-on-rails - Rails 优雅地处理超时 session ?

ruby - 带有过滤器的 Nokogiri next_element

ruby-on-rails - NameError: 未初始化的常量::Nokogiri

ruby-on-rails - 从 View 中输入 Rails

ruby - 如何使用 Ruby 复制文件并根据它们的原始目录重命名它们?

ruby-on-rails - 如何让 Paper_trail 与 Action 文本一起使用?