如何使用硒打印所有自动建议的元素
How to print all auto suggested elements using selenium
我一直在尝试通过 google 打印所有自动建议的元素。但是当我打印时,不显示自动建议的关键字。根据所附图片,我应该得到 10 个结果并打印出来。
下面是我的代码:
'''
package FindElements;
import java.util.Iterator;
import java.util.List;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
public class Search {
public static void main(String[] args) {
WebDriver driver;
System.setProperty("webdriver.chrome.driver", "F:\Selenium_Vaibhav\chromedriver_win32\chromedriver.exe");
driver= new ChromeDriver();
driver.get("https://www.google.com/");
driver.findElement(By.name("q")).sendKeys("selenium");
List<WebElement> list= driver.findElements(By.xpath("//*[text()='selenium']"));
System.out.println(list.size());
for(int i=0;i<list.size();i++)
{
System.out.println(list.get(i).getText());
}
}
}
'''
如果您检查搜索结果元素,您会注意到所有列表元素共享一个 class,即 "sbl1",试试这个解决方案:
List<WebElement> list= driver.findElements(By.xpath("//*[@class='sbl1']"));
将索引存储在 WebElement 中,然后将文本存储在 String 变量中。您将获得所有 10 个关键字
for(int i=0; i<=lists;i++) {
WebElement searchtexets=list.get(i);
String Searchtexts=searchtexets.getText();
System.out.println(Searchtexts);
}
我一直在尝试通过 google 打印所有自动建议的元素。但是当我打印时,不显示自动建议的关键字。根据所附图片,我应该得到 10 个结果并打印出来。
下面是我的代码:
'''
package FindElements;
import java.util.Iterator;
import java.util.List;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
public class Search {
public static void main(String[] args) {
WebDriver driver;
System.setProperty("webdriver.chrome.driver", "F:\Selenium_Vaibhav\chromedriver_win32\chromedriver.exe");
driver= new ChromeDriver();
driver.get("https://www.google.com/");
driver.findElement(By.name("q")).sendKeys("selenium");
List<WebElement> list= driver.findElements(By.xpath("//*[text()='selenium']"));
System.out.println(list.size());
for(int i=0;i<list.size();i++)
{
System.out.println(list.get(i).getText());
}
}
}
'''
如果您检查搜索结果元素,您会注意到所有列表元素共享一个 class,即 "sbl1",试试这个解决方案:
List<WebElement> list= driver.findElements(By.xpath("//*[@class='sbl1']"));
将索引存储在 WebElement 中,然后将文本存储在 String 变量中。您将获得所有 10 个关键字
for(int i=0; i<=lists;i++) {
WebElement searchtexets=list.get(i);
String Searchtexts=searchtexets.getText();
System.out.println(Searchtexts);
}