selenium 元素,常见,异常,无效选择器异常:

niwlg2el  于 2023-01-30  发布在  其他
关注(0)|答案(2)|浏览(166)

我想通过html选择器从www.example.com获取一系列事件python.org

from selenium import webdriver
from selenium.webdriver.common.by import By

chrome_driver_path = "C:\development\chromedriver.exe"

driver = webdriver.Chrome(executable_path=chrome_driver_path)

driver.get("https://python.org")

event_time = driver.find_element(By.CLASS_NAME, ".event-widget time")

for time in event_time:
  print(time.text)
mznpcxlj

mznpcxlj1#

定位器类型错误,它应该是CSS_SELECTOR而不是CLASS_NAME,此外,您必须提到find_elements而不是find_element

event_time = driver.find_elements(By.CSS_SELECTOR, ".event-widget time")

for time in event_time:
  print(time.text)

输出:

2023-02-05
2023-02-16
2023-02-21
2023-02-25
2023-03-06
y53ybaqx

y53ybaqx2#

关于无效选择器异常
当XPath或CSS选择器不符合XPath或CSS规范时,Selenium将引发InvalidSelectorException。换句话说,当传入Selenium WebDriver的选择器引擎无法解析的选择器时,将发生InvalidSelectorException。将元素检索命令与未知的Web元素选择器策略一起使用时,将发生这种情况

    • 问题:**

在您的示例中,我在整个HTML结构中没有看到任何名为***. event-widget time***的类属性。

    • 解决方案:**

请尝试使用一些其他定位器,如ID、名称或XPath。如果您指定使用ClassName,请确保Web元素的class属性在您的代码中准确匹配。

相关问题