首页 > 解决方案 > 我正在尝试引用 Target 网站上的一个元素,但在抓取它时遇到问题

问题描述

我正在尝试抓取一些 Target 产品信息,但在尝试引用 UPC 数字时遇到了问题。

我在 Python 上使用 Selenium 并试图引用 UPC 和数字,但似乎没有办法引用它的数字部分。我目前正在尝试:

UPC = driver.find_element_by_xpath("//*[text()[contains(.,'UPC')]]")

但这仅返回字符串 'UPC' 而不是数字。

有谁知道如何引用整个元素?随手发了几张图,谢谢!

标签: pythonseleniumxpathscreen-scrapingwebdriverwait

解决方案


要抓取目标产品信息元素,您需要诱导WebDriverWait并且visibility_of_element_located()您可以使用以下任一Locator Strategies

  • 使用XPATH

    UPC = WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//*[contains(., 'UPC')]")))
    
  • 注意:您必须添加以下导入:

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

推荐阅读