有人可以帮我把这段代码工作吗?我有几个选择字段,我只想要最后一个在我的变量。xPath最后选择元素
variable = browser.elements_by_xpath('//div[@class="nested-field"]//select[last()]
谢谢!
有人可以帮我把这段代码工作吗?我有几个选择字段,我只想要最后一个在我的变量。xPath最后选择元素
variable = browser.elements_by_xpath('//div[@class="nested-field"]//select[last()]
谢谢!
是完全匹配的类属性吗? 如果标记是这样
<div class="nested-field other">
...
那么你就会被确切类必须匹配或使用XPath包含的内容。
这是一个常见问题解答:XPath中的[]
运算符比//
伪运算符具有更高的优先级(优先级)。这就是为什么必须使用括号来更改默认的运营商优先级。至少有几个类似的问题有很好的解释 - 搜索它们并阅读和理解。
而不是:
//div[@class="nested-field"]//select[last()]
使用:
(//div[@class="nested-field"]//select)[last()]
我不明白为什么// div [@ class =“nested-field”] // select会匹配任何内容。 – pguardiario
@pguardiario:不是“匹配”而是“选择”。 ''div [@ class =“nested-field”] // select'选择任何'select'元素,它是任何'div'元素的后代,其'class'属性的值为''“嵌套字段” '。 –
我想我的问题是为什么/ /选择而不是/选择? – pguardiario
提供样品输入。 –