Java 如何在谷歌注册页面切换到另一种带有标签名div的语言?
当我尝试使用操作切换Google注册页面中的语言时,出现了“将目标移出边界”错误?。也许这不是正确的方法,也不是正常的下拉列表。我们必须单击(而不是悬停),然后弹出式列表才能选择语言 我们用硒来改变它的方法是什么 网址: 我使用过的代码:Java 如何在谷歌注册页面切换到另一种带有标签名div的语言?,java,selenium,selenium-webdriver,Java,Selenium,Selenium Webdriver,当我尝试使用操作切换Google注册页面中的语言时,出现了“将目标移出边界”错误?。也许这不是正确的方法,也不是正常的下拉列表。我们必须单击(而不是悬停),然后弹出式列表才能选择语言 我们用硒来改变它的方法是什么 网址: 我使用过的代码: d.navigate().to("https://accounts.google.com/signup?hl=en"); d.findElement(By.xpath("//*[@id='lang-chooser']/div[1]
d.navigate().to("https://accounts.google.com/signup?hl=en");
d.findElement(By.xpath("//*[@id='lang-chooser']/div[1]/div[1]/div[9]/span")).click();
Actions ac=new Actions(d);
WebElement eng_uk=d.findElement(By.xpath("//*[@id='lang-chooser']/div[1]/div[1]/div[8]/span"));
ac.moveToElement(eng_uk).click().perform();
我得到的错误是:
线程“main”中出现异常
org.openqa.selenium.interactions.MoveTargetOutOfBoundsException:移动
目标出界
我用Java编写了这段代码,它很有效 Try-catch块可以通过检查getAttribute()方法的null返回来替换它们来清除
driver.get(“https://accounts.google.com/signup?hl=en");
ArrayList元素=新的ArrayList(driver.findElements(By.tagName(“div”)));
对于(int i=0;i
我用Java编写了这段代码,它很有效
Try-catch块可以通过检查getAttribute()方法的null返回来替换它们来清除
driver.get(“https://accounts.google.com/signup?hl=en");
ArrayList元素=新的ArrayList(driver.findElements(By.tagName(“div”)));
对于(int i=0;i
Hi,请查看并提供问题的详细说明,以及演示问题、预期输出和任何错误消息所需的最少代码。Hi,请查看并提供问题的详细说明,以及演示问题、预期输出和任何错误消息所需的最少代码。
driver.get("https://accounts.google.com/signup?hl=en");
ArrayList<WebElement> elements = new ArrayList<WebElement>(driver.findElements(By.tagName("div")));
for(int i = 0; i < elements.size(); i++) {
try {
if(elements.get(i).getAttribute("jsname").equals("wQNmvb")) {
if(elements.get(i).getText().contains("English (United States)")) {
new Actions(driver).moveToElement(elements.get(i)).click().perform();
break;
}
}
} catch(Exception e){}
}
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
elements = (ArrayList<WebElement>) driver.findElements(By.tagName("div"));
for(int i = 0; i < elements.size(); i++) {
try {
if(elements.get(i).getAttribute("jsname").equals("wQNmvb")) {
if(elements.get(i).getText().contains("Deutsch")) {
JavascriptExecutor executor = (JavascriptExecutor)driver;
executor.executeScript("arguments[0].click();", elements.get(i));
break;
}
}
} catch(Exception e) {}
}