如何使用硒打印所有自动建议的元素

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);
}