我被困在以下来自使用 Javascript 的站点的 html 代码中。我想要的是使用 Select 模块在 Selenium 中选择项目“Short_Budget_Report”。html代码如下:
<input id="WD51" ct="CB" lsdata="{1:'20ex',8:'WD52',9:'2347',11:'Short_Budget_Report',14:'Load\x20View',18:'View',44:false,48:'WD51\x2dtlbl'}" lsevents="{Select:[{ResponseData:'delta',ClientAction:'submit'},{}]}" type="text" autocomplete="off" tabindex="0" ti="0" title="Load View" class="lsField__input urEdf2TxtEnbl lsEdfLeftBrdRadius lsEdf3TxtHlpBtn urEdfVAlign urBorderBox lsControl--explicitwidth" readonly="" value="Short_Budget_Report" style="vertical-align:top;width:20ex;">
我尝试过的:
dropdown_id = driver.find_element_by_xpath('//*[@id="WD51"]')
dropdown = Select(dropdown_id)
dropdown.select_by_value('Short_Budget_Report')
这给出了以下错误:
raise UnexpectedTagNameException(
selenium.common.exceptions.UnexpectedTagNameException: Message: Select only works on <select> elements, not on <input>
您可以简单地使用send_keys()
函数在下拉列表中选择特定选项。
find_element()
函数定位下拉列表的元素send_keys()
在该元素上使用函数立即从列表中选择任何值简而言之,按照以下方式进行操作应该可以满足您的需求:
driver.find_element_by_id('WD51').send_keys('Short_Budget_Report')
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句