我正在尝试在此页http://stivconsultasexternas.cnbv.gob.mx/ConsultaInformacionEmisoras.aspx下载pdf。我想选择名为“ctl00 $ DefaultPlaceholder $ ComboFiltroPersonalizado”的webdriverelement,但它是隐藏的元素,不可见。
这是我的代码。我感谢任何帮助。
import selenium as sel
driver = sel.webdriver.Firefox()
driver.get("http://stivconsultasexternas.cnbv.gob.mx/ConsultaInformacionEmisoras.aspx")
elem=driver.find_element_by_name("ctl00$DefaultPlaceholder$ComboFiltroPersonalizado")
我想选择“Ver todos”选项。 谢谢。
答案 0 :(得分:1)
您实际上需要单击可单击的相应td
元素。点击它可以打开组合框:
elem = driver.find_element_by_id("ctl00_DefaultPlaceholder_ComboFiltroPersonalizado_B-1")
elem.click()
仅供参考,我使用浏览器开发者工具来检查v
按钮下的元素:
然后,要选择Ver todos
,您可以按ID找到它,但在此之前 - wait for it:
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
driver = webdriver.Firefox()
driver.get("http://stivconsultasexternas.cnbv.gob.mx/ConsultaInformacionEmisoras.aspx")
elem = driver.find_element_by_id("ctl00_DefaultPlaceholder_ComboFiltroPersonalizado_B-1")
elem.click()
elem = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, 'ctl00_DefaultPlaceholder_ComboFiltroPersonalizado_DDD_L_LBI3T0')))
elem.click()