在网站上,当我登录用户名:水星和:水星,点击提交按钮,我进入登录成功的页面。然后我需要点击主页按钮,这是在左边,但我不能。
from telnetlib import EC
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
driver = webdriver.Chrome(executable_path="D:\ChromeDriverExtracted\chromedriver")
driver.get("http://demo.guru99.com/test/newtours/")
driver.maximize_window()
driver.find_element_by_name("userName").send_keys("mercury")
driver.find_element_by_name("password").send_keys("mercury")
driver.find_element_by_name("submit").click()
WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.XPATH, "/html/body/div[2]/table/tbody/tr/td[1]/table/tbody/tr/td/table/tbody/tr/td/table/tbody/tr[1]/td[2]/font/a"))).click()发布于 2021-12-04 14:56:53
这是一个绝对的xpath
/html/body/div[2]/table/tbody/tr/td[1]/table/tbody/tr/td/table/tbody/tr/td/table/tbody/tr[1]/td[2]/font/a请使用以下基于文本的定位器之一:
//a[text()='Home']或者像这样使用LINK_TEXT:
WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.LINK_TEXT, "Home"))).click()还可以使用以下CSS选择器:
a[href='index.php']还有其他方法可以点击,
代码试用1:
time.sleep(5)
driver.find_element_by_xpath("//a[text()='Home']").click()代码试用2:
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//a[text()='Home']"))).click()代码试用3:
time.sleep(5)
button = driver.find_element_by_xpath("//a[text()='Home']")
driver.execute_script("arguments[0].click();", button)代码试用4:
time.sleep(5)
button = driver.find_element_by_xpath("//a[text()='Home']")
ActionChains(driver).move_to_element(button).click().perform()导入:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.action_chains import ActionChains发布于 2021-12-04 15:23:08
要单击文本为Home的元素,需要为https://stackoverflow.com/questions/54193625/how-to-click-on-a-element-through-selenium-python/54194511#54194511诱导WebDriverWait,可以使用以下任何一个定位器策略
https://stackoverflow.com/questions/70226649
复制相似问题