为什么Webdriver无法通过xpath找到元素?

时间:2019-05-26 13:31:57

标签: .net selenium-webdriver xpath chrome-web-driver

我的代码找不到XPath的注册链接。使用CSSSelector也会遇到同样的问题。

driver = new ChromeDriver(options);
            driver.Navigate().GoToUrl("https://www.goldtoe.com/state/landing");         
            var LoginLink = driver.FindElement(By.XPath("//li[@class='hidden-xs myAccountMenu']//a[contains(text(),'Sign In/Register')] "));
            LoginLink.Click();

消息:

  

OpenQA.Selenium.NoSuchElementException:没有这样的元素:无法   定位元素:{“方法”:“ xpath”,“选择器”:“ // li [@ class ='hidden-xs   myAccountMenu'] // a [包含(text(),'登录/注册')]“}(会话   信息:chrome = 74.0.3729.169)(驱动程序信息:chromedriver = 74.0.3729.6   (255758eccf3d244491b8a1317aa76e1ce10d57e9-refs / branch-heads / 3729 @ {#29}),平台= Windows   NT 10.0.17763 x86_64)

1 个答案:

答案 0 :(得分:0)

我认为您需要在“登录/注册”字符串中使用转义字符,特别是在使用“ /”特殊字符时。因此,请改为尝试“登录\ /注册”。使用'\'作为转义字符。