使用 selenium 查找输入和按钮元素
Posted
技术标签:
【中文标题】使用 selenium 查找输入和按钮元素【英文标题】:Finding input and button elements with sellinium 【发布时间】:2022-01-19 00:08:43 【问题描述】:我可以进入此页面here 并单击确认cookie“知道了”按钮,单击“播放演示”按钮并单击确认年龄按钮进入此页面here(为此每个演示创建的令牌链接)
我还可以在此处使用此 xpath @class,'coefficient 从轮计数中提取值,还可以在此处使用此 xpath @class,'flew-coefficient 提取完成的轮计数值
我接下来要做的是找到输入元素并在左侧输入值金额,然后单击左侧的蓝色大“下注”按钮,但我似乎无法找到值输入“1.00”和页面左侧的按钮。如果可以,请查看我的代码并提供帮助。
【问题讨论】:
我的回答解决了你的问题吗? 以某种方式处理输入,但我必须找到我所做的正确输入元素,但我只能删除一个输入文本值。我也可以找到按钮,但它不可点击 【参考方案1】:要设置所需的输入值,请尝试以下操作:
String inputXpath = "//input[contains(@class,'roboto-font-b')]";
WebElement input = driver.findElement(By.xpath(inputXpath));
input.click();
input.sendKeys(Keys.chord(Keys.CONTROL,"a",Keys.DELETE));
input.sendKeys("20");
要点击“投注”按钮,请尝试以下操作:
driver.findElement(By.xpath("//button[contains(@class,'success')]")).click();
【讨论】:
【参考方案2】:很抱歉这么晚才回来,我有一些私人事情要参加。
我设法使用以下 xpath 来查找输入,但只删除了一个文本:
String inputXpathL = "//app-bet-control[@class='bet-control double-bet'] //div[@class='second row']//input[@class='roboto-font-b']"; WebElement inputTargetL = driver.findElement(By.xpath(inputXpathL)); inputTargetL.click(); inputTargetL.sendKeys(Keys.chord(Keys.CONTROL,"a",Keys.DELETE)); inputTargetL.sendKeys("10");
对于该按钮,我使用了以下 xpath,但该按钮不可点击,并且没有异常或错误:
findElement(By.xpath("//app-bet-control[@class='bet-control double-bet']//button[@class='btn btn-secondary btn-sm betopt ng-star-inserted']")).click();
【讨论】:
以上是关于使用 selenium 查找输入和按钮元素的主要内容,如果未能解决你的问题,请参考以下文章
当元素不是按钮且在 Selenium 中不可定位时,如何查找在网页中单击了哪个元素? (HTML,硒)[关闭]