用 Ruby 解析 XML

Stewart Nguyen 2023年1月30日 2022年5月18日
  1. 在 Ruby 中使用 gem install nokogiri 安装 Gem nokogiri
  2. 在 Ruby 中使用 Gem nokogiri 解析 XML
用 Ruby 解析 XML

nokogiri 是一个解析 XML 和 HTML 的 ruby gem。本文展示了如何使用它。

在 Ruby 中使用 gem install nokogiri 安装 Gem nokogiri

gem install nokogiri

输出:

Building native extensions. This could take a while...
Successfully installed nokogiri-1.10.10
Parsing documentation for nokogiri-1.10.10
Installing ri documentation for nokogiri-1.10.10
Done installing documentation for nokogiri after 4 seconds
1 gem installed

在 Ruby 中使用 Gem nokogiri 解析 XML

让我们通过解析这个 XML 文档来测试一下。

my_xml = <<-MYDOC
<root>
  <person name="husband">Adam</person>
  <person name="wife">Eve</person>
</root>
MYDOC
require 'nokogiri'

doc = Nokogiri::XML(my_xml)

迭代每个元素:

doc.elements.each { |e| puts e.name }

我们可以访问每个节点的数据:

doc.at('person[name="husband"]').text
=> "Adam"
doc.at('person[name="wife"]').text
=> "Eve"