Python 如何设置WebElement的id属性?

Python 如何设置WebElement的id属性?,python,selenium,selenium-webdriver,Python,Selenium,Selenium Webdriver,根据selenium API文档,有一个函数getAttribute,但没有setAttribute 理想情况下,我希望能够做到以下几点: element.set_attribute('id', 'abcd') 我想要实现的是在测试期间设置WebElement的id 我使用的是驱动程序2.44,它不支持带有参数的execute\u script您不能使用Selenium设置元素的属性。它主要用于自动化web应用程序以进行测试 不过,Selenium允许在网页上执行javascript 见以下示

根据selenium API文档,有一个函数
getAttribute
,但没有
setAttribute

理想情况下,我希望能够做到以下几点:

element.set_attribute('id', 'abcd')
我想要实现的是在测试期间设置WebElement的id


我使用的是驱动程序2.44,它不支持带有参数的
execute\u script
您不能使用Selenium设置元素的属性。它主要用于自动化web应用程序以进行测试

不过,Selenium允许在网页上执行javascript

见以下示例:

您可以执行任意javascript来查找元素,只要返回DOM元素,它就会自动转换为WebElement对象

WebElement element = (WebElement) ((JavascriptExecutor)driver).executeScript("return $('.cheese')[0]");
查找页面上每个标签的所有输入元素:

List<WebElement> labels = driver.findElements(By.tagName("label"));
List<WebElement> inputs = (List<WebElement>) ((JavascriptExecutor)driver).executeScript(
    "var labels = arguments[0], inputs = []; for (var i=0; i < labels.length; i++){" +
    "inputs.push(document.getElementById(labels[i].getAttribute('for'))); } return inputs;", labels);
List labels=driver.findElements(按.tagName(“标签”);
列表输入=(列表)((JavascriptExecutor)驱动程序).executeScript(
变量标签=参数[0],输入=[];for(变量i=0;i
有关更多信息,您可以通过
,这是非常精确的。

您能否提供您正在处理的元素的一些
html