好用的XML工具是XMLSPY 非常好用,不过要收费
不过很多浏览器现在也支持XPATH了,比如谷歌浏览器 还有火狐浏览器插件
XPATH 能用来解析xml 也能用于HTML开发
现在更多的可能是用来爬取数据了吧
废话不多说了,直接上技巧
先上函数图
技巧1:取精确值 text() 函数获取
例如如下xml代码块
XPATH: //SOO/PROD_INST/ACC_PROD_INST_ID[text()='123566884893'] 获取到NODE
<SOO type="DEL_PROD_INST_REQ_TYPE">
<PUB_REQ>
<SOO_ID>36</SOO_ID>
</PUB_REQ>
<ORDER_REQ>
<ORDER_ITEM_ID>3232200305123970</ORDER_ITEM_ID>
</ORDER_REQ>
<PROD_INST>
<PROD_INST_ID>123566884893</PROD_INST_ID>
<ACC_PROD_INST_ID>123566884893</ACC_PROD_INST_ID>
<EXT_PROD_INST_ID>322210912237550774</EXT_PROD_INST_ID>
<EXT_ACC_PROD_INST_ID>322210912237550774</EXT_ACC_PROD_INST_ID>
<PRODUCT_NBR>6600001000</PRODUCT_NBR>
<EXT_PROD_ID>235010000</EXT_PROD_ID>
<PRODUCT_NAME>移动业务</PRODUCT_NAME>
<LAN_ID>8320500</LAN_ID>
<COMMON_REGION_ID>8320500</COMMON_REGION_ID>
<ACC_NBR>17315470973</ACC_NBR>
<STATUS_CD OLDVAL="100000">110000</STATUS_CD>
<PAYMENT_MODE_CD>2100</PAYMENT_MODE_CD>
<ATTR CD="40010030" VAL="10" ACTION="DEL"/>
<OWNER_CUST_ID>123017816154</OWNER_CUST_ID>
<EXT_CUST_ID>322210303001687456</EXT_CUST_ID>
<USE_CUST_ID>123017816154</USE_CUST_ID>
<ADDRESS_ID/>
<ADDRESS_DESC/>
</PROD_INST>
技巧2:取属性值 @加属性名称 获取
例如:XPATH: //SOO[@type='ADD_CUSTOMER_ORDER_REQ_TYPE'] 能获取到SOO节点
技巧3:取兄弟节点
//SOO/PROD_OFFER_INST/PROD_OFFER_INST_ID/following-sibling::*
*代表任何节点
当然也可以用其他方法,比如先找到节点,再到父级节点,再取子节点
4.同时关联2个值 ,使用and or 等
//SOO[@type='DEL_PROD_INST_REQ_TYPE']/PROD_INST[EXT_PROD_ID='235010000' and PROD_INST_ID='123566884893' ]