我可以通过Xpath获取元素的属性值,但是如何获取所有属性名称?
示例:
# there is an element
'<img src="http://fakesrc" alt="pic name"></img>'
i = <Element img at 0x102622cb0>
In [10]: i.xpath("//img/@src")
Out[10]: ['http://fakesrc']
In [11]: i.xpath("//img/@*")
Out[11]: ['http://fakesrc', 'pic name']
如何获取i的名称src / alt?
答案 0 :(得分:1)
根据您是否要包含名称空间前缀,您可以在XPath 2.0中选择以下两个选项:
//@*/local-name()
//@*/name()
选择适合您需求的其他初始上下文节点,并选择see the specifications以获取更多信息。
使用XPath 1.0,以上操作是不可能的。以下 可以工作,但只会显示一个属性的属性名称,即使有多个属性也是如此。
local-name(//@*)
name(//@*)