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

Selenium中如何获取按钮点击事件的元素定位路径?

Fixing Selenium Button Click Issue in Python 3

Let's break down why your current code isn't working and get that button clicked properly!

First, the problem with your existing XPath:
Your code uses //*[@id="main"]/h2[2]/div/input, but looking at the HTML you shared, there's no element with id="main" or an <h2> tag wrapping the button's <div>. That's why Selenium can't find the element at all.

Here are several reliable ways to target that button correctly:

1. Target by the button's unique value attribute

This is the most straightforward since the button has a distinct value text:

from selenium.webdriver.common.by import By

driver.find_element(By.XPATH, '//input[@value="START WATCHING PAYED ADS"]').click()

Or using a CSS selector instead:

driver.find_element(By.CSS_SELECTOR, 'input[value="START WATCHING PAYED ADS"]').click()

2. Target by the onclick function

Since the button triggers a specific doarea(2) function, you can use that to locate it:

driver.find_element(By.XPATH, '//input[@onclick="javascript:doarea(2)"]').click()

3. Target via the parent div's align attribute

If the parent <div align="left"> is unique on the page, you can use that to narrow down the element:

driver.find_element(By.XPATH, '//div[@align="left"]/input').click()

Add explicit waits to avoid timing issues

Often, clicks fail because the element hasn't fully loaded yet. Use Selenium's explicit wait to ensure the button is ready to be clicked:

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

# Wait up to 10 seconds for the button to be clickable
wait = WebDriverWait(driver, 10)
payed_ads_button = wait.until(EC.element_to_be_clickable((By.XPATH, '//input[@value="START WATCHING PAYED ADS"]')))
payed_ads_button.click()

This should resolve the issue—pick the method that makes the most sense for your page's structure!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 08:49:08