首页 > 解决方案 > 使用 selenium 单击应用 LinkedIn 按钮

问题描述

我正在尝试单击linkedIn 上的Apply 按钮,但是这样做很难。我试图以 id 为目标,但我注意到当页面重新加载时 id 总是会改变。

我试过了:

browser.find_element_by_xpath("//span[text() = 'Apply']").click()browser.find_element_by_xpath("//button[@type = 'Apply']").click()它不起作用。

在此处输入图像描述

标签: pythonseleniumselenium-webdriverxpathselenium-chromedriver

解决方案


使用任一xpath.

browser.find_element_by_xpath("//span[normalize-space(.)='Apply']").click()

或者

browser.find_element_by_xpath("//span[contains(.,'Apply')]").click()

UPADTE: 似乎同步问题引发WebDriverWait()并等待element_to_be_clickable()

WebDriverWait(driver,15).until(EC.element_to_be_clickable((By.XPATH,"//span[normalize-space(.)='Apply']"))).click()

您需要导入以下库。

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

推荐阅读