簡體   English   中英

Selenium - 如何從 div 下拉列表中選擇項目?

[英]Selenium - How to select item from div drop down list?

我正在嘗試通過 python/selenium 從 div 下拉列表中選擇第二個選項。 下面的代碼是我到目前為止所擁有的。 第一行打開下拉菜單並開始工作。 第二行嘗試選擇 2 選項並單擊它。 我已經嘗試過“2”、“22”和“Option-22”,但似乎都不起作用。

示例 Python Selenium 代碼

#opens drop down
browser.find_element(By.XPATH,".//*[@id='Account']").click()

#selects item from dropdown
browser.find_element(By.XPATH,".//*[@id='Account']/option[22]").click()

錯誤信息:

Message: invalid selector: Unable to locate an element with the xpath expression .//*[@id='Account']/option[22] because of the following error:
SyntaxError: Failed to execute 'evaluate' on 'Document': The string './/*[@id='Account']/option[22]' is not a valid XPath expression.

示例 HTML 代碼:

<div id="Account" class="">
                                    <select>
                                                <option selected="" value="11">Option-11</option>
                                                <option value="22">Option-22</option>
                                                <option value="33">Option-33</option>
                                    </select>

                </div>

您想要的 XPath 是:

"//*[@id='Account']//option[@value='22']"

或者您可以使用以下 CSS 選擇器:

'#Account option[value="22"]'

或者使用SeleniumBase ,您可以在一行中執行完整的選擇選項:

self.select_option_by_text("#Account select", "Option-22")

(完全披露:我維護 SeleniumBase)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM