selenium 同样的class如何选择第二个

借鉴与:https://ask.csdn.net/questions/8081814

同样的class如何选择第二个

方式1:

List<WebElement> elementsByCssSelector = driver.findElementsByCssSelector(".el-input__inner");
        int size = elementsByCssSelector.size();
        elementsByCssSelector.get(0).sendKeys("admin");
        elementsByCssSelector.get(1).sendKeys("admin");

方式2:推荐

List<WebElement> elementsByCssSelectorAa4b = driver.findElementsByCssSelector("._aa4b._add6._ac4d._ap35");

for循环下

String type = elementsByCssSelectorAa4b.get(i).getAttribute("type");
String name = elementsByCssSelectorAa4b.get(i).getAttribute("name");
String attribute = elementsByCssSelectorAa4b.get(i).getAttribute("aria-label");

直接将整个class内容都复制进去,最后执行点击操作

driver.findElementByCssSelector("[class=\"x9f619 xjbqb8w x78zum5 x168nmei x13lgxp2 x5pf9jr xo71vjh x1xmf6yo x1e56ztr x540dpk x1m39q7l x1n2onr6 x1plvlek xryxfnj x1c4vz4f x2lah0s xdt5ytf xqjyukv x1qjc9v5 x1oa3qoh x1nhvcw1\"]").click();

等待页面加载完成

适合N多的class参数,直接将整个class内容都复制进去,最简单粗暴

new WebDriverWait(driver, 30).until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("[class=\"x9f619 xjbqb8w x78zum5 x168nmei x13lgxp2 x5pf9jr xo71vjh x1n2onr6 x1plvlek xryxfnj x1c4vz4f x2lah0s xdt5ytf xqjyukv x1qjc9v5 x1oa3qoh x1nhvcw1\"]")));

 适合少数几个class参数

new WebDriverWait(driver, 30).until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("._aa4b._add6._ac4d._ap35")));

根据ID元素查找并输入值和点击,最终获取指定id元素的text内容

        // 等待页面加载完成-通过ID元素判断
        new WebDriverWait(driver, 30).until(ExpectedConditions.visibilityOfElementLocated(By.id("listToken")));
        // 为指定id元素填写内容
        driver.findElementById("listToken").sendKeys(sercet);

        driver.findElementById("submit").click();

        // 假设你要获取的元素有id属性
        WebElement element = driver.findElement(By.id("output"));
        //获取text内容
        String text = element.getText();

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值