背景我试图使用libkeepasspython库从keepass2文件中读取密码。在
使用lxml(因为这是libkeepass给我的),我必须搜索这样的条目并从中获取密码值
<Entry>
<String>
<Key>Password</Key>
<Value Protected="False" ProtectedValue="XXX">XXX</Value>
</String>
<String>
<Key>Title</Key>
<Value>PasswordName</Value>
</Entry>
所以我必须找到一个条目:
我已经做了这么多(kdb是密码文件对象):
^{pr2}$这给了我正确条目的字符串元素。在
或者,您可以在
Entry
元素上使用谓词,然后从那里返回目标元素String
,而不是向下到Entry
,然后返回目标String
元素。在因为您使用的是}。前者完全支持XPath1.0表达式,而后者仅支持subset of XPath 1.0:
lxml
,所以我建议您使用xpath()
方法,而不是{我刚意识到,我可以用“.”导航。所以解决办法是:
相关问题 更多 >
编程相关推荐