我无法选择此按钮。我已经尝试了大多数定位器,即XPath,包含,CSS选择器仍然没有单击。enter image description here
在上面的图像链接中,突出显示了要单击的按钮。
答案 0 :(得分:0)
如果您是在Windows上运行此程序,请尝试使用X / Y坐标和AppRobotic等宏工具进行点击。我看到的一个类似问题是页面继续加载时遇到了问题,这阻止了点击。如果是这样,我通常会尝试停止页面加载,并与页面进行一些交互,这样的事情应该对您有用:
import win32com.client
from win32com.client import Dispatch
x = win32com.client.Dispatch("AppRobotic.API")
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
driver = webdriver.Chrome('chromedriver.exe')
driver.get('https://www.google.com')
# wait 20 seconds
x.Wait(20000)
# scroll down a couple of times in case page javascript is waiting for user interaction
x.Type("{DOWN}")
x.Wait(2000)
x.Type("{DOWN}")
x.Wait(2000)
# forcefully stop pageload at this point
driver.execute_script("window.stop();")
# if clicking with Selenium still does not work here, use screen coordinates
x.MoveCursor(xCoord, yCoord)
x.MouseLeftClick
x.Wait(2000)
答案 1 :(得分:0)
答案 2 :(得分:-1)
跨度不可单击。您想单击按钮。如果您可以提供整个DOM元素,则可以根据显示的内容创建一个供您使用的xpath,
ul.checkout-types > li > button
是你的路。使用用户Mike的变量,
driver.click("ul.checkout-types > li > button");