gpt4 book ai didi

java - 访问网站时无法发送 key 或关闭弹出窗口

转载 作者:行者123 更新时间:2023-12-01 19:01:01 25 4
gpt4 key购买 nike

当我访问此网站时:https://www.flipkart.com/

系统提示我输入用户名和密码,但我无法使用驱动程序将 key 发送到任一输入字段,而且我也无法使用 x 按钮上的单击方法来跳过登录。我尝试使用By.xpath 和 By.className 与 WebElements 交互,但它不起作用。这是我的代码,展示了我的尝试。

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.support.ui.*;

import java.util.List;
import java.util.concurrent.TimeUnit;

class Test{

public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver","C:\\SeleniumDrivers\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS);
driver.get("https://www.flipkart.com/");

//I don't think the pop up is a frame. This doesn't work.
driver.switchTo().frame(1);
//className of the 'X' button. Doesn't work
driver.findElement(By.className("_2AkmmA _29YdH8")).click();
//two xpaths of the 'X' button. Doesn't work
driver.findElement(By.xpath("//button[@innertext='✕']")).click();
driver.findElement(By.xpath("/html/body/div[2]/div/div/button")).click();
//trying to send text to the email field. Both className and xpath doesn't work
driver.findElement(By.className("_2zrpKA _1dBPDZ")).sendKeys("test");
driver.findElement(By.xpath("/html/body/div[2]/div/div/div/div/div[2]/div/form/div[1]/input")).sendKeys("test1");


}
}

最佳答案

尝试使用相对 XPATH 来识别元素。在您的查询中,您可以选择以下 XPATH 是否有效。

//*[text() = 'Enter Email/Mobile number']//..//../input
//*[contains(text(),'Enter Email')]//..//../input
(//*[text() = 'Enter Email/Mobile number']//preceding::input)[last()]

您可以在Dev.to了解有关XPATH的更多信息。

关于java - 访问网站时无法发送 key 或关闭弹出窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59639537/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com