Python下拉菜单中的Selenium

2024-05-18 10:17:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图找到一个下拉元素,这样我就可以从中选择一个选项,我看到Selenium有一个内置的类来处理select下拉列表,但是我很难找到这个元素。你知道吗

有人能告诉我哪里出了问题吗?你知道吗

我正在寻找的元素

<div>
<label>Department<font color="red"><em>*</em></font></label>
<select name="department">
<option value="XXX">Select</option>
<option value="1">Department 1</option>
<option value="2">Department 2</option>
<option value="3">Department 3</option>
</div>

我尝试过的

browser.find_element_by_xpath("//div[@label='Department']")
browser.find_element_by_xpath("//div[@name='Department']")

browser.find_element_by_xpath("//select[@label='Department']")
browser.find_element_by_xpath("//select[@name='Department']")

不高兴-有没有人打电话告诉我哪里出了问题?你知道吗

对于这个基本的问题,我深表歉意-对于selenium来说是个新问题,对于一个初学者来说是个引导。你知道吗

谢谢。你知道吗


Tags: namedivbrowser元素byvalueelementfind
2条回答

在dom中,有两个点具有唯一标识以查找select元素。你知道吗

1.一个select标记本身具有name属性,其值为'department'。(小箱子)

 browser.find_element_by_name("department")

或者

 browser.find_element_by_xpath("//select[@name ='department']")

或者

 browser. find_element_by_css_selector("select[name='department']")

2.另一个是带有innerText作为“Department”(title)的标签,它是select的同级

 browser.find_element_by_xpath("//label[text() = 'department']/following-sibling::select")

我遇到的问题是由于select/下拉列表位于iframe中。谢谢你让我检查一下。你知道吗

要检查元素是否在iframe中,只需检查网站元素并查找包含的<iframe>标记。你知道吗

在研究了如何解决这个问题之后,我用下面的代码解决了我的问题。你知道吗

iframe = browser.find_element_by_xpath("//iframe[@name='frame2']")
browser.switch_to_frame(iframe)
browser.find_element_by_xpath("//select[@name='department']")

再次感谢你,伙计!你知道吗

相关问题 更多 >