所以我有一份大致如下的文件
<detection-run>
<wireless-network>
<SSID>
<encryption>WPA+PSK</encryption>
<encryption>WPA+TKIP</encryption>
<encryption>WPA+AES-CCM</encryption>
</SSID>
</wireless-network>
<wireless-network>
<SSID>
<encryption>WEP</encryption>
</SSID>
</wireless-network>
<wireless-network>
<SSID>
<encryption>WPA+PSK</encryption>
<encryption>WPA+TKIP</encryption>
</SSID>
</wireless-network>
<wireless-network>
<SSID>
<encryption>None</encryption>
</SSID>
</wireless-network>
</detection-run>
从这个列表中,我需要一个包含每个SSID的加密节点的列表。所以一个元素的文本是“WPA+PSK”,另一个元素是“WEP”,另一个元素是“WPA+PSK”,另一个元素是“None”。在WPA上,它是WPA+PSK还是其他东西并不重要,只要抓取一个加密节点。在
这里有更多的节点和多个无线网络,但所使用的加密是我所关心的。我在Python中使用lxml
,我需要从每个SSID获取一个加密节点。如何使用xpath()实现这一点?在
我试过很多不同的方法,但似乎都没有效果。lxml一直说我有一个无效的谓词。在
谢谢
使用
//encryption[text()!="WPA-PSK"]/text()
xpath:印刷品:
^{pr2}$相关问题 更多 >
编程相关推荐