【问题标题】:Python Selenium web scraping pathPython Selenium 网页抓取路径
【发布时间】:2019-04-27 04:44:03
【问题描述】:

如何将上述内容转换为 selenium xpath?

我试过了:

"//ul[@id = 'productsCatalog AND @class = 'b-catalogList_wrapper clearfix']" 

但它给出了一个错误

【问题讨论】:

  • 1- 这已经是xpath 2- 错误是什么? 3- 将 html 发布为文本,而不是图像 4- 你有一个 ID,为什么你首先使用xpath
  • 请不要把代码、错误信息、数据发成图片,直接把文字发到这里。

标签: python selenium xpath css-selectors webdriverwait


【解决方案1】:

根据您共享的 HTML,该元素是 dynamic 元素,因此您必须诱导 WebDriverWait 以使 元素可见 和您可以使用以下任一解决方案:

  • CSS_SELECTOR:

    element = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "ul.b-catalogList_wrapper.clearfix#productsCatalog")))
    
  • XPATH:

    element = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//ul[@class = 'b-catalogList_wrapper clearfix' and @id ='productsCatalog']")))
    
  • 注意:您必须添加以下导入:

    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support import expected_conditions as EC
    

【讨论】:

    猜你喜欢
    • 2019-06-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-13
    • 2020-11-23
    • 2019-06-30
    相关资源
    最近更新 更多