加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby – 用Nokogiri阅读XML的问题

发布时间:2020-12-17 02:52:59 所属栏目:百科 来源:网络整理
导读:我的 Ruby脚本应该从URL读取XML文档并检查它是否格式良好,并返回任何错误.我有一个使用以下文本托管的示例错误XML文档(来自 Nokogiri tutorial: ?xml version="1.0"? root openfoo closedbar/closed /root 我的测试脚本如下(url引用我个人服务器上托管的上
我的 Ruby脚本应该从URL读取XML文档并检查它是否格式良好,并返回任何错误.我有一个使用以下文本托管的示例错误XML文档(来自 Nokogiri tutorial:

<?xml version="1.0"?>
  <root>
    <open>foo
      <closed>bar</closed>
  </root>

我的测试脚本如下(url引用我个人服务器上托管的上述xml文件):

require 'nokogiri'

document = Nokogiri::XML(url) 

puts document
puts document.errors

输出是:

<?xml version="1.0"?>
Start tag expected,'<' not found

为什么它只捕获XML文件的第一行?即使使用已知良好的XML文件,它也能做到这一点.

解决方法

我不太确定你用什么代码来实际输出XML的内容.我只看到错误打印代码.但是,我已经发布了一些示例代码,以便通过下面的Nokogiri有效地浏览XML:

<item>
  Something
</item> 
<item>
  Else
</item>

doc = Nokogiri::XML(open(url))
set = doc.xpath('//item')
set.each {|item| puts item.to_s}
  #=> Something
  #=> Else

一般来说,教程here应该对您有所帮助.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读