【发布时间】:2014-03-31 18:36:43
【问题描述】:
所以我有一个大致像这样的文档
<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+PSK什么的都无所谓,只要抓到一个加密节点即可。
有更多的节点和多个无线网络,但我只关心使用的加密。我在 Python 中使用lxml,我需要从每个 SSID 中获取一个加密节点。我将如何使用 xpath() 来做到这一点?
我尝试了很多不同的方法,但似乎都没有奏效。 lxml 一直说我的谓词无效。
谢谢
【问题讨论】: