无法在 Google 的高级搜索页面上 select 下拉列表项
Unable to select drop-down list item on Google's Advance Search page
问题:
无法select下拉列表中的语言。
请帮忙!!
测试步骤:
- 转到https://www.google.co.in/
- 点击右下角的'Settings'。
- 现在点击'Advance Search'
- 将打开高级搜索页面。
- 单击名称为 'any language' 的下拉菜单。
- 将打开语言下拉列表。
- Select 下拉列表中的任何语言说印地语。
代码如下:
public class DropDown_Settings {
static String baseURL = "https://google.com";
static WebDriver driver;
public static void main(String[] args) throws InterruptedException
{
driver= new FirefoxDriver();
driver.get(baseURL);
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(2000, TimeUnit.SECONDS);
driver.findElement(By.xpath(".//*[@id='fsettl']")).click();
driver.findElement(By.xpath(".//*[@id='advsl']/a[text()='Advanced
search']")).click();
driver.findElement(By.cssSelector("#lr_button")).click();
WebElement dropDown=driver.findElement(By.id("lr_menu"));
List<WebElement> options=dropDown.findElements(By.tagName("li"));
System.out.println(options.size());
for(WebElement value:options){
if(value.getText().equals("Hindi")){
System.out.println(value.getText());
value.click();
break;
}
}
}
}
您的代码在 Chrome 中运行良好,请尝试使用此代码在 Firefox 和 chrome
中运行
在 Firefox 中尝试此代码 Chrome:
System.setProperty("webdriver.chrome.driver","E:/software and tools/chromedriver_win32/chromedriver.exe");
WebDriver driver=new ChromeDriver();
driver.manage().window().maximize();
driver.get("https://www.google.co.in/");
driver.manage().timeouts().implicitlyWait(2000, TimeUnit.SECONDS);
driver.findElement(By.xpath(".//*[@id='fsettl']")).click();
driver.findElement(By.xpath(".//*[@id='advsl']/a[text()='Advanced search']")).click();
driver.findElement(By.cssSelector("#lr_button")).click();
WebElement dropDown=driver.findElement(By.id("lr_menu"));
List<WebElement> options=dropDown.findElements(By.tagName("li"));
System.out.println(options.size());
for(int i=0;i<options.size();i++){
String langName=options.get(i).getText();
if(langName.contains("Hindi"))
{
options.get(i).click();
break;
}
}
System.setProperty("webdriver.chrome.driver", "./drivers/chromedriver.exe");
WebDriver driver= new ChromeDriver();
driver.get("https://www.google.co.in/");
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(2000, TimeUnit.SECONDS);
driver.findElement(By.xpath("//a[@id='fsettl']")).click();
Thread.sleep(3000);
driver.findElement(By.xpath("//span[@id='advsl']//a")).click();
Thread.sleep(10000);
driver.findElement(By.xpath("//div[@id='lr_button']")).click();
driver.manage().timeouts().implicitlyWait(2000, TimeUnit.SECONDS);
driver.findElement(By.xpath("//ul[@id='lr_menu']//li[23]")).click();
}
问题: 无法select下拉列表中的语言。
请帮忙!!
测试步骤:
- 转到https://www.google.co.in/
- 点击右下角的'Settings'。
- 现在点击'Advance Search'
- 将打开高级搜索页面。
- 单击名称为 'any language' 的下拉菜单。
- 将打开语言下拉列表。
- Select 下拉列表中的任何语言说印地语。
代码如下:
public class DropDown_Settings {
static String baseURL = "https://google.com";
static WebDriver driver;
public static void main(String[] args) throws InterruptedException
{
driver= new FirefoxDriver();
driver.get(baseURL);
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(2000, TimeUnit.SECONDS);
driver.findElement(By.xpath(".//*[@id='fsettl']")).click();
driver.findElement(By.xpath(".//*[@id='advsl']/a[text()='Advanced
search']")).click();
driver.findElement(By.cssSelector("#lr_button")).click();
WebElement dropDown=driver.findElement(By.id("lr_menu"));
List<WebElement> options=dropDown.findElements(By.tagName("li"));
System.out.println(options.size());
for(WebElement value:options){
if(value.getText().equals("Hindi")){
System.out.println(value.getText());
value.click();
break;
}
}
}
}
您的代码在 Chrome 中运行良好,请尝试使用此代码在 Firefox 和 chrome
中运行在 Firefox 中尝试此代码 Chrome:
System.setProperty("webdriver.chrome.driver","E:/software and tools/chromedriver_win32/chromedriver.exe");
WebDriver driver=new ChromeDriver();
driver.manage().window().maximize();
driver.get("https://www.google.co.in/");
driver.manage().timeouts().implicitlyWait(2000, TimeUnit.SECONDS);
driver.findElement(By.xpath(".//*[@id='fsettl']")).click();
driver.findElement(By.xpath(".//*[@id='advsl']/a[text()='Advanced search']")).click();
driver.findElement(By.cssSelector("#lr_button")).click();
WebElement dropDown=driver.findElement(By.id("lr_menu"));
List<WebElement> options=dropDown.findElements(By.tagName("li"));
System.out.println(options.size());
for(int i=0;i<options.size();i++){
String langName=options.get(i).getText();
if(langName.contains("Hindi"))
{
options.get(i).click();
break;
}
}
System.setProperty("webdriver.chrome.driver", "./drivers/chromedriver.exe");
WebDriver driver= new ChromeDriver();
driver.get("https://www.google.co.in/");
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(2000, TimeUnit.SECONDS);
driver.findElement(By.xpath("//a[@id='fsettl']")).click();
Thread.sleep(3000);
driver.findElement(By.xpath("//span[@id='advsl']//a")).click();
Thread.sleep(10000);
driver.findElement(By.xpath("//div[@id='lr_button']")).click();
driver.manage().timeouts().implicitlyWait(2000, TimeUnit.SECONDS);
driver.findElement(By.xpath("//ul[@id='lr_menu']//li[23]")).click();
}