为了账号安全,请及时绑定邮箱和手机立即绑定

消息:尝试通过Selenium在下拉菜单中单击选项时,元素<option>无法滚动到视图中

消息:尝试通过Selenium在下拉菜单中单击选项时,元素<option>无法滚动到视图中

aluckdog 2021-04-15 08:28:57
我正在尝试选择一个下拉菜单,然后选择一个选项。我正在使用最新版本的Selenium,最新版本的Firefox,最新版本的geckodriver和最新版本的Python。这是我的问题:当我尝试选择一个选项时,它给我以下错误:selenium.common.exceptions.ElementNotInteractableException: Message: Element <option> could not be scrolled into view.我尝试了各种方法来解决此问题,但似乎没有一种有效。这是我尝试过的一些方法。mySelectElement = browser.find_element_by_id('providerTypeDropDown')dropDownMenu = Select(mySelectElement)dropDownMenu.select_by_visible_text('Professional')mySelectElement = browser.find_element_by_id('providerTypeDropDown')dropDown = Select(mySelectElement)for option in dropDown.options:    message = option.get_attribute('innerText')    print(message)    if message == 'Professional':        print("Exists")        dropDown.select_by_visible_text(message)         breakelement = browser.find_element_by_id('providerTypeDropDown')browser.execute_script("var select = arguments[0]; for(var i = 0; i < select.options.length; i++){ if(select.options[i].text == arguments[1]){ select.options[i].selected = true; } }", element, "Professional")HTML代码遵循通常的选择标记和选项标记。任何帮助表示赞赏。HTML代码包括在下面。<select data-av-chosen="providerTypes" id="providerTypeDropDown" data-placeholder="Please Select a Provider Type" name="providerTypeDropDown"class="chzn-select input-full ng-pristine chzn-done ng-invalid ng-invalid-provider-type" data-ng-options="providerType.value for providerType in request.models.providerTypes"data-ng-model="request.models.providerType" data-av-validator-field="providerType" data-disable-search-threshold="5" style="display; none;">    <option value="" class="">Please Select a Provider Type</option>    <option value="0">Professional</option>    <option value="1">Institutional</option></select> 打印语句用于测试/代码跟踪。
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 403 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信