我正在为工作编写自动化程序,并且陷入了下拉菜单。有问题的特定选择框如下:
<span class="a-dropdown-container" id="select-size-bulk-asin">
<select name="display_type" class="a-native-dropdown">
<option value="SMALL-IMAGES">SMALL-IMAGES</option>
<option value="LARGE-IMAGES">LARGE-IMAGES</option>
<option value="TEXT">TEXT</option>
</select>
<span tabindex="-1" data-a-class="a-spacing-small" class="a-button a-button-dropdown a-spacing-small">
<span class="a-button-inner">
<span class="a-button-text a-declarative" data-action="a-dropdown-button" aria-haspopup="true" role="button" tabindex="0" aria-pressed="false" aria-owns="2_dropdown_combobox">
<span class="a-dropdown-prompt">SMALL-IMAGES</span>
</span>
<i class="a-icon a-icon-dropdown"></i>
</span>
</span>
</span>
它默认为“小图像”,我想选择“文本”选项。我收到元素不可点击错误。页面很简单,该元素在屏幕上可见。
我尝试过的方法列表为:
我正在考虑是否应该转到下一个元素并发送Shift + Tab,直到到达此下拉列表,然后按下向下箭头键。但是只想将其用作最后的手段。
注意: -我正在使用Python 3和Chrome。
答案 0 :(得分:0)
您可以尝试以下代码从下拉列表中选择值:
murmur3_128
但是,正如您提到的,您收到的是元素不可点击的异常。您可以尝试以下代码:
select = Select(driver.find_element_by_id('select-size-bulk-asin'))
select.select_by_visible_text('TEXT')
作为最后的选择,您可以继续:
WebDriverWait(browser, 30).until(EC.element_to_be_clickable((By.ID, "select-size-bulk-asin")))