如何使用selenium和Python根据HTML在网页上单击元素
我已经尝试了一段时间,但似乎无法使用python selenium找到此元素。我使用的所有方法,无论是用XPath、CSS选择器还是OR类找到的都是否定的,所以有人知道如何找到并点击中间值为“登录”和“按钮”类型的元素吗?如何使用selenium和Python根据HTML在网页上单击元素,python,selenium,selenium-webdriver,xpath,css-selectors,Python,Selenium,Selenium Webdriver,Xpath,Css Selectors,我已经尝试了一段时间,但似乎无法使用python selenium找到此元素。我使用的所有方法,无论是用XPath、CSS选择器还是OR类找到的都是否定的,所以有人知道如何找到并点击中间值为“登录”和“按钮”类型的元素吗? 其他一切都很好,只是在选择登录按钮时。以下是代码,以防他们可能有问题或有人想查看,谢谢您可以使用按钮的ID找到按钮,然后单击它: button = driver.find_element_by_id('019a8673-60aa-4b9f-825a-00b01ad36507'
其他一切都很好,只是在选择登录按钮时。以下是代码,以防他们可能有问题或有人想查看,谢谢您可以使用按钮的ID找到按钮,然后单击它:
button = driver.find_element_by_id('019a8673-60aa-4b9f-825a-00b01ad36507')
button.click()
这里,driver是您的浏览器webdriver 要在文本为登录的元素上调用单击()
,您需要引导WebDriverWait使该元素可单击,并且可以使用以下任一解决方案:
:css\u选择器
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "div.nike-unite-submit-button.loginSubmit.nike-unite-component.blurred > input[value='LOG IN']"))).click()
:xpath
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//div[@class='nike-unite-submit-button loginSubmit nike-unite-component blurred']/input[@value='LOG IN']"))).click()
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "div.nike-unite-submit-button.loginSubmit.nike-unite-component.blurred > input[value='LOG IN']"))).click()
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//div[@class='nike-unite-submit-button loginSubmit nike-unite-component blurred']/input[@value='LOG IN']"))).click()