首页 > 解决方案 > 如何在 python selenium webdriver 中使用 javascript 代码通过 xpath 查找 web 元素?

问题描述

我想通过在 python 中执行 javascript 代码的 xpath 来查找 web 元素,然后单击它。这可能吗?如何做到这一点?

标签: javascriptpythonselenium-webdriverxpathdocument.evaluate

解决方案


要使用通过查找WebElement,您必须使用评估xpath表达式并返回结果的方法。evaluate()


document.evaluate()

document.evaluate()根据XPath表达式和其他给定参数返回XPathResult 。

语法是:

var xpathResult = document.evaluate(
  xpathExpression,
  contextNode,
  namespaceResolver,
  resultType,
  result
);

例子

例如,谷歌主页中的搜索可以使用xpath唯一标识,也可以从控制台使用和xpath表达式进行标识,如下所示://*[@name='q'] document.evaluate()

document.evaluate("//*[@name='q']", document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;

快照:

document_evalute_xpath


推荐阅读