1

Selenium ドキュメントWeb サイトの検索フィールド内にテキストを送信した後、自動提案からオプションを選択しようとしています。しかし、私はそれらの提案を見つけることができません。

コードトライアル:

driver.get('https://www.selenium.dev/documentation/en/')
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "#search-by"))).send_keys("selenium")

自動提案のスナップショット:

ドキュメンテーション

自動提案のいずれかを選択してください。

4

2 に答える 2

3

@Moshe Slavinの回答に+1。すべてを保持するautocomplete-suggestionsdivですautocomplete-suggestion's

要素をキャプチャするために、 を使用getPageSource()してページ内の要素を印刷しました。

そして、要素を理解したら、以下のコードの残りの部分は自明です

wait.until(ExpectedConditions.elementToBeClickable(By.className("autocomplete-suggestion")));

List<WebElement> abc = driver.findElements(By.className("autocomplete-suggestion"));

String value = "Remote WebDriver client";

List<String> def = new ArrayList<String>();

    for (int i = 0; i < abc.size(); i++) {

            //Get the values and store it in a list
            def.add(abc.get(i).getAttribute("data-title"));

        }

        if (def.contains(value))

            abc.get(def.indexOf(value)).click();

        else
            System.out.println("Value not present");
于 2020-12-28T02:48:53.030 に答える