这个 HTML 元素如何在没有任何链接标签的情况下点击,以及如何通过 Selenium 点击它?

时间:2021-06-16 16:37:36

标签: html selenium

当我尝试通过 Selenium 单击特定元素时,我在很多场合都遇到过这种情况。

这是一个 div 元素,当我们通过自动化点击它时没有任何反应。奇怪的是,这个元素树不包含任何链接标签。

这是一个示例 URL:https://www.quora.com/What-are-some-of-the-best-ways-to-learn-programming 尝试点击“请求”按钮打开此对话框。

photo depicting what we want to click

我试图避免使用鼠标悬停,而是想通过 javascript 执行点击。我目前正在使用以下代码:

element = driver.find_element_by_xpath("(//div[@class='q-box qu-display--inline-block']/div/div/span/span)[1]")
browser.execute_script("arguments[0].click();", element)

但是这次点击不起作用。

  1. 在正常的用户交互中,这个元素如何在没有 a 标签的情况下进行点击?

  2. 如果不存在 a-tag 那么有没有办法通过 js 调用进行点击?

1 个答案:

答案 0 :(得分:0)

当您单击加号时,您会看到顶部显示一条消息,并且加号变为复选标记。

看看是否有效

driver.find_element_by_xpath(".//span[@name='CirclePlus'][1]").click()

wait = WebDriverWait(driver, 30)
element = wait.until(EC.presence_of_element_located((By.XPATH, './/span[@name='CircleCheckmark'][1]')))
if element.is_displayed():
    print("Invitation sent")
相关问题