【问题标题】:Selenium selector not working properly on PythonSelenium 选择器在 Python 上无法正常工作
【发布时间】:2022-12-18 10:57:13
【问题描述】:

第一个问题在这里。

开始我的 Selenium-Py 之旅,第一个任务是剖析一个包含超过 110.000 个源代码字符的页面。

我需要找到一个包含 8 个 HTML“标识”的元素,如下所示:

<a href="#Menu" class="item item" onclick="JQueryModule('DBSearch', 'Send'); "> Search <\a>

尝试了很多方法来找到元素,无论多么困难。在同一页面中发现许多其他项目,例如:

elm = driver.find_element(By.XPATH, "i[@onclick='openNav()']")
elm = driver.find_element(By.XPATH, //div[@class='item active']/a[1]")

由于某种原因,这在这里不起作用。

有什么帮助吗?

【问题讨论】:

    标签: python selenium selenium-webdriver web-scraping selenium-chromedriver


    【解决方案1】:

    您共享的两个 Xpath 都有错误的语法。
    以下内容会更好:

    elm = driver.find_element(By.XPATH, "//i[@onclick='openNav()']")
    elm = driver.find_element(By.XPATH, "//div[@class='item active']/a[1]")
    

    但我不能确定它是否有效,因为我无法检查这些定位器的正确性和唯一性。此外,您可能需要在访问元素之前等待页面加载。 WebDriverWait expected_conditions 应该使用显式等待。

    【讨论】:

      猜你喜欢
      • 2017-04-07
      • 2017-06-02
      • 2016-01-12
      • 2015-01-17
      • 1970-01-01
      • 2020-03-18
      • 1970-01-01
      • 2018-10-12
      相关资源
      最近更新 更多