Я пишу программу на Java с использованием WebDriver, и у меня возникли небольшие проблемы с получением текста после выбора элемента web.
HTML-код нужной мне части сайта выглядит следующим образом:
Français
<div id="content">
<div id="Pagination"></div>
<div id="mid">
</div>
</div>
Коды классов текстового поля для панели поиска и раскрывающейся панели языков
Мой код Java в настоящее время может открывать Chrome с помощью драйвера Chrome и может вводить в строке поиска. Однако я не могу получить текст, полученный в результате записи.
Изображение
На изображении здесь я ввел «avoir» в строку поиска и хочу, чтобы весь текст внутри полей, после которых, похоже, не было идентификаторов или имен, использованных внутри xpath.
Может кто-нибудь помочь мне найти, как получить и сохранить текст из этих полей после выпадающего меню языка?
Заранее спасибо!
Код, который у меня пока есть:
//import statements not shown
public class WebScrapper {
public WebScrapper() {
}
public WebDriver driver = new ChromeDriver();
public void openTestSite() {
driver.navigate().to(the URL for the website);
}
public void enter(String word) {
WebElement query_editbox =
driver.findElement(By.id("query"));
query_editbox.sendKeys(word);
query_editbox.sendKeys(Keys.RETURN);
}
public void getText() {
//List<WebElement> searchResults =
driver.findElements(By.xpath("//div[@id='mid']/div"));
// Writer writer = new BufferedWriter(new
OutputStreamWriter(new FileOutputStream("status.txt"),
"utf-8"));
//int[] index = {0};
WebElement result=driver.findElement(By.id("mid"));
System.out.println(result.getText());
}
public static void main(String[] args) throws IOException {
System.setProperty("webdriver.chrome.driver", "chromedriver");
System.out.println("Hello");
WebScrapper webSrcapper = new WebScrapper();
webSrcapper.openTestSite();
webSrcapper.enter("avoir");
webSrcapper.getText();
System.out.println("Hello");
}
}