You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法从露营用品网页提取商品价格,求代码调试建议

问题排查与修复建议

直接给你几个可能导致价格提取失败的原因和对应解决办法:

  • 定位器路径不准确
    访问你提供的链接后,检查页面元素会发现:商品价格实际嵌套在div.prod_price__prod_price下的span标签里,或者网站可能更新了class命名(比如实际生效的是prod_price__current这类)。你可以右键价格区域选择「检查」,确认准确的元素层级。比如修正定位代码:

    # 定位到价格所在的span子元素
    Prijs_BergerCamping = driver.find_element(By.XPATH, '//div[@class="prod_price__prod_price"]/span').text
    

    或者用更简洁的CSS选择器:

    Prijs_BergerCamping = driver.find_element(By.CSS_SELECTOR, '.prod_price__prod_price span').text
    
  • 页面未加载完成就执行定位
    电商网站多为动态渲染,你的代码可能在价格元素还没渲染出来时就执行了查找,导致抛出NoSuchElementException。必须加上显式等待确保元素加载完成:

    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.support import expected_conditions as EC
    
    # 最长等待10秒,直到价格元素可见
    price_element = WebDriverWait(driver, 10).until(
        EC.visibility_of_element_located((By.XPATH, '//div[@class="prod_price__prod_price"]/span'))
    )
    Prijs_BergerCamping = price_element.text
    print(Prijs_BergerCamping)
    
  • 元素存在但无法获取text内容
    如果元素能找到但.text返回空,可能是元素被隐藏或文本内容存储在属性中,试试用get_attribute获取:

    Prijs_BergerCamping = price_element.get_attribute('innerText')
    # 或者用textContent
    Prijs_BergerCamping = price_element.get_attribute('textContent')
    
  • 检查是否有干扰元素
    确认页面是否有Cookie弹窗、遮罩层遮挡价格元素,或者价格元素嵌套在iframe中——如果是iframe,需要先切换到对应iframe再执行定位。

内容的提问来源于stack exchange,提问作者Dion

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 21:15:12