【发布时间】:2021-08-14 03:35:46
【问题描述】:
我想使用 Chrome webdriver 在以下网站中选择“TIPOPARTICIPANTE”下拉列表的第二个元素:
https://www.rad.cvm.gov.br/ENET/frmConsultaExternaCVM.aspx
我可以通过以下方式选择下拉列表:
from selenium import webdriver
driver = webdriver.Chrome('D:\\chromeDriver\\chromedriver.exe') # caminho onde o chromedriver.exe está
driver.get('https://www.rad.cvm.gov.br/ENET/frmConsultaExternaCVM.aspx')
dropdown_list = driver.find_element_by_css_selector('#s2id_cboTipoParticipante')
dropdown_list.click()
option = driver.find_element_by_css_selector('li:nth-child(2)')
option.click() # este comando gerou um erro 'ElementClickInterceptException'
但是,在这个脚本的最后一行,我得到了以下错误:
Traceback(最近一次调用最后一次): 文件“”,第 5 行,在 option2.click() 文件“C:\Users\Raphael\Anaconda3\lib\site-packages\selenium\webdriver\remote\webelement.py”, 第 80 行,点击 self._execute(Command.CLICK_ELEMENT) 文件“C:\Users\Raphael\Anaconda3\lib\site-packages\selenium\webdriver\remote\webelement.py”, 第 633 行,在 _execute return self._parent.execute(命令,参数) 文件“C:\Users\Raphael\Anaconda3\lib\site-packages\selenium\webdriver\remote\webdriver.py”, 第 321 行,在执行中 self.error_handler.check_response(响应) 文件“C:\Users\Raphael\Anaconda3\lib\site-packages\selenium\webdriver\remote\errorhandler.py”, 第 242 行,在 check_response 中 raise exception_class(message, screen, stacktrace) ElementClickInterceptedException:元素点击拦截:元素 li class="select2-search-field".../li 在点不可点击 (819, 118)。其他元素会收到点击:div id="select2-drop-mask" class="select2-drop-mask" style=""/div (会话信息:chrome=90.0.4430.93)
有人可以帮我选择这个下拉列表的第二个元素(“Companhias Abertas”)吗?
【问题讨论】:
-
问题解决了吗?
标签: python css selenium selenium-webdriver drop-down-menu