使用 Nokogiri 读取格式错误的 XML:URL 字段中的未转义与号



我正在尝试在我的rails项目中使用Nokogiri从第三方读取XML文件。我解析的一个节点包含一个带有未转义的 & 符号的 URL(如 foo.com/index.html?page=1&query=bar

我知道这被认为是格式错误的XML,Nokogiri只是尝试解析它,导致foo.com/index.html?page=1=bar

如何获取完整的网址?我可以调整野木吗?您会进行搜索和替换预运行还是最佳实践?

使用包含 & 符号的图像链接解析 SVG 时遇到同样的问题。

将 SVG 解析为 HTML 似乎可以正确处理链接,转义 &.

fixed_svg = Nokogiri::HTML.fragment(raw_svg).to_html
# proceed with XML parsing
svg = Nokogiri::XML(fixed_svg)

最新更新