Select python 中含有硒

Select with selenium in python

我希望使用 Select 单击以下站点的第一个下拉菜单(“Fejlesztési programok”)中的第三个选项:https://www.palyazat.gov.hu/tamogatott_projektkereso?fbclid=IwAR3rmPVj-YAVoMTs2Vodj7JKTVIAZkbTiZ9z4b0j04mq2ThECw5kQOI1p7M

我使用 css-选择器查找菜单 ID,但它没有响应调用。你知道如何解决吗?非常感谢

极简示例代码:

from selenium import webdriver
from selenium.webdriver.support.ui import Select
import time
driver = webdriver.Safari(executable_path = '/usr/bin/safaridriver')

driver.get("https://www.palyazat.gov.hu/tamogatott_projektkereso?fbclid=IwAR3rmPVj-YAVoMTs2Vodj7JKTVIAZkbTiZ9z4b0j04mq2ThECw5kQOI1p7M")

select = Select(driver.find_element_by_id('css-1uccc91-singleValue'))
select.select_by_index(2)

这里有几个问题:

  1. 您应该添加延迟以仅在可访问时尝试定位元素。
  2. 您尝试访问的元素不是 select
    这应该会更好:
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
import time
driver = webdriver.Safari(executable_path = '/usr/bin/safaridriver')
wait = WebDriverWait(driver, 20)

driver.get("https://www.palyazat.gov.hu/tamogatott_projektkereso?fbclid=IwAR3rmPVj-YAVoMTs2Vodj7JKTVIAZkbTiZ9z4b0j04mq2ThECw5kQOI1p7M")
wait.until(EC.visibility_of_element_located((By.XPATH, "//div[@class='form-group' and .//label[@for='programok']]//div[contains(@class,'css-1wy0on6')]"))).click()

现在您可以select提供的选项之一。
但同样,这里不是 Select 元素。