繁体   English   中英

我找不到这个元素,python selenium

[英]I am unable to locate this element, python selenium

用 class 名称尝试过,现在用 XPath 尝试,但没有成功。 代码 =

element = WebDriverWait(driver,30).until(EC.presence_of_element_located((By.XPATH,"/html/body/div[@id='root']/div[@class='login-form']/div[@class='login-form-tabs']/div[@class='TabsNav_TabsNav__3uqOq tabs-nav']/div[@class='nav-link TabNavLink_TabNavLink__1Au2n']  ")))
signup = driver.find_element_by_xpath("/html/body/div[@id='root']/div[@class='login-form']/div[@class='login-form-tabs']/div[@class='TabsNav_TabsNav__3uqOq tabs-nav']/div[@class='nav-link TabNavLink_TabNavLink__1Au2n'] ")
signup.click()

错误:

Traceback (most recent call last):
  File "C:\Users\noahr\PycharmProjects\pythonProject\main.py", line 32, in <module>
    signup = driver.find_element_by_xpath("/html/body/div[@id='root']/div[@class='login-form']/div[@class='login-form-tabs']/div[@class='TabsNav_TabsNav__3uqOq tabs-nav']/div[@class='nav-link TabNavLink_TabNavLink__1Au2n'] ")
  File "C:\Users\noahr\.virtualenvs\pythonProject-ME1SVWk8\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 394, in find_element_by_xpath
    return self.find_element(by=By.XPATH, value=xpath)
  File "C:\Users\noahr\.virtualenvs\pythonProject-ME1SVWk8\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 976, in find_element
    return self.execute(Command.FIND_ELEMENT, {
  File "C:\Users\noahr\.virtualenvs\pythonProject-ME1SVWk8\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
    self.error_handler.check_response(response)
  File "C:\Users\noahr\.virtualenvs\pythonProject-ME1SVWk8\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"/html/body/div[@id='root']/div[@class='login-form']/div[@class='login-form-tabs']/div[@class='TabsNav_TabsNav__3uqOq tabs-nav']/div[@class='nav-link TabNavLink_TabNavLink__1Au2n'] "}
  (Session info: chrome=92.0.4515.159)

HTML结构:

你可以试试下面的xpath:

//span[text()='Login / Signup']/..

代码:

element = WebDriverWait(driver, 30).until(EC.element_to_be_clickable((By.XPATH,"//span[text()='Sign Up']/..")))
element.click()

这应该工作:

wait.until(EC.visibility_of_element_located((By.XPATH, "//div[contains(@class,'nav-link')][2]"))).click()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM