[英]Unable to click element in selenium
我正在尝试抓取:
我的 Selenium 代码点击“发现我的尺寸”,然后输入身高和体重,点击下一步按钮移动到下一页。 然后点击腹部形状和臀部形状框架出现。 它需要单击相关跨度,然后移动到下一步。 我无法使用此代码单击它:
if "straighter" in str(df_temp['hshape']):
print("here hshapeeeeeeeeee")
xpath="/html/body/div[9]/div[3]/div/div[2]/div[1]/div/div/div[3]/div/div/ul/li[1]/span/img"
straighter = WebDriverWait(driver, 30).until(EC.element_to_be_clickable((By.XPATH, xpath))).click()
与此类似的是我点击腹部形状的代码,效果很好:
if "flatter" in str(df_temp['bshape']):
xpath="/html/body/div[9]/div[3]/div/div[2]/div[1]/div/div/div[3]/div/div/ul/li[1]/span"
flatter = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, xpath)))
driver.execute_script("arguments[0].click();", flatter)
也不抛出任何异常。 刚退出
编辑:演练:
如果您想要快速解决方案,请尝试:
xpath="//span/div[text()='Straighter']"
我建议使用 xpath ,它不依赖于确切的位置,而是通过特定的元素属性识别其目标。 在这种情况下,它将使用元素的文本。
但是,文本并不总是一个可靠的因素,尤其是在多语言网站上。 或者,您可以尝试以下方法:
xpath="//span[contains(@aria-label,'Hip Shape Selection button - Straighter')]"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.