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

使用Selenium操作Shopify站点无法点击Continue to payment按钮如何解决

Shopify结账页「Continue to payment」按钮无法点击解决方案

核心问题原因

  • 你当前使用的XPath //*[@id="continue_button"]/svg 定位到的是按钮内部的spinner加载图标,该元素本身不绑定点击事件,是导致点击无响应的核心原因之一
  • Shopify结账流程要求必须先选中物流方式,未完成选择时按钮处于逻辑禁用状态,点击不会触发跳转
  • 按钮存在加载状态校验,当属性aria-busy="true"时按钮处于加载中,此时点击操作会被忽略

修复步骤

  • 第一步:先选中当前页面的Standard Shipping物流单选框,解锁提交按钮
driver.find_element_by_id("checkout_shipping_rate_id_shopify-standard20shipping-15_00").click()
  • 第二步:添加显式等待,确保按钮完全可交互后再操作,同时直接定位按钮本身而非内部子元素
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

# 最长等待10秒,直到按钮可点击
wait = WebDriverWait(driver, 10)
continue_btn = wait.until(EC.element_to_be_clickable((By.ID, "continue_button")))
  • 第三步:执行点击操作
continue_btn.click()

兜底方案

如果常规点击仍被拦截,可直接通过JS触发按钮原生点击事件:

driver.execute_script("document.getElementById('continue_button').click()")

Spinner逻辑说明

你之前未找到的spinner相关逻辑是Shopify按钮的默认行为:按钮被点击后会自动将aria-busy设为true,隐藏按钮文字、显示svg spinner图标,直到页面逻辑校验通过后才会跳转。如果未完成前置操作(比如没选物流),按钮会瞬间切回可点击状态,看起来就像点击无响应。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 20:39:02