【发布时间】:2015-04-26 01:34:04
【问题描述】:
我正在尝试使用 xmlstarlet 来提取此 XML 提要中某些元素中的文本:
https://services.boatwizard.com/bridge/events/bc0af0c8-4b47-42b3-9a71-5326775344e0/boats?status=on
我要提取的元素之一是嵌入在 XML 文档中的城市名称文本(为清楚起见,不包括某些父元素):
<Location>
<LocationAddress>
<CityName>St Malo</CityName>
<CountryID>FR</CountryID>
<Postcode>35400</Postcode>
</LocationAddress>
</Location>
我正在尝试提取“St Malo”。
我已将提要保存到 boats.xml 并使用 xmlstarlet el -v boats.xml 找出正确的 XPath 名称,它似乎是:
ProcessVehicleRemarketingDataArea/VehicleRemarketing/VehicleRemarketingBoatLineItem/Location/LocationAddress/CityName
我正在尝试使用以下语法来提取文本:
xml sel -t -m "ProcessVehicleRemarketingDataArea/VehicleRemarketing/VehicleRemarketingBoatLineItem/Location/LocationAddress/CityName" -v "." -n boats.xml
尝试了许多不同的语法变体,但均未成功。几乎认为它可能是关闭的 XML 文件?如何提取“St Malo”?
【问题讨论】:
-
您是如何下载整个
xml数据的?
标签: xml bash xpath xml-parsing xmlstarlet