我有一个XML文档,其中有许多标记精简(在标记中:
<marker city="City" address="street" coords="52.386912449620866, 16.983248591423035" desc="tel. 061 874 96 69<br><br>Poniedziałek-piątek 9:00-20:00<br>Sobota 9:00-20:00<br>Niedziela 10:00-17:00" photo="" wa_firstname="861" open="1"/>
我想通过Nokogiri解析它。
第一步:
dom = Nokogiri::XML(page, nil, "UTF-8")
第二
items = dom.xpath("//markers//marker")
每个marker
的结果是:
<marker city="City" address="street" coords="52.386912449620866, 16.983248591423035" desc="tel. 061 874 96 69"/>
但我希望:
<marker city="City" address="street" coords="52.386912449620866, 16.983248591423035" desc="tel. 061 874 96 69<br><br>Poniedziałek-piątek 9:00-20:00<br>Sobota 9:00-20:00<br>Niedziela 10:00-17:00" photo="" wa_firstname="861" open="1"/>
为什么会削减desc
属性?我需要这个。
我将它用于其他XML文档,一切正常。
答案 0 :(得分:0)
这不是格式良好的XML:您不能将标记放在属性值中。你需要像这样转义标签:
<marker city="City" address="street" coords="52.386912449620866, 16.983248591423035" desc="tel. 061 874 96 69<br><br>Poniedziałek-piątek 9:00-20:00<br>Sobota 9:00-20:00<br>Niedziela 10:00-17:00" photo="" wa_firstname="861" open="1"/>
您可以使用许多XML验证程序来检查您的文件,包括http://www.w3schools.com/xml/xml_validator.asp等在线文件和xmllint
等命令行工具。