我正在尝试使用Xpath或其他任何东西来定位元素<span _ngcontent-c19=""> ACME Nursing </span>
我已经尝试了多种使用动作来移动moveToElement的方法,以及许多其他方法,但是我只是无法进行悬停和点击。我也尝试过等待。无论我如何尝试,都会出现以下错误:
下面列出的是包含我要查找的隐藏元素的代码:
<acme-role-facility _ngcontent-c2="" class="ng-tns-c2-1" _nghost-c20="">
<li _ngcontent-c20="" class="header-item show dropdown" ngbdropdown=""><a _ngcontent-c20="" aria-haspopup="true" class="dropdown-toggle dropdown-toggle" href="javascript:void(0)" id="roleFacilityDropdown" ngbdropdowntoggle="" aria-expanded="true"><span _ngcontent-c20="" class="block m-t-xs" id="roleFacilityName"><span _ngcontent-c20="">ACME Nursing - </span></span><span _ngcontent-c20="" class="block"><span _ngcontent-c20="">Nursing Admissions</span><b _ngcontent-c20="" class="caret"></b></span></a>
<aht-navigation
_ngcontent-c20="" aria-labelledby="roleFacilityDropdown" ngbdropdownmenu="" _nghost-c19="" class="dropdown-menu show" x-placement="bottom-left" style="top: 52px; left: 0px;">
<perfect-scrollbar _ngcontent-c19="" class="nav-facility-container">
<div style="position: static;" class="ps">
<div class="ps-content">
<!---->
<div _ngcontent-c19="" class="animated fadeInDown light ng-star-inserted" style="">
<!---->
<ul _ngcontent-c19="" class="nav navbar-nav ng-star-inserted">
<!---->
<li _ngcontent-c19="" class="ng-star-inserted">
<!---->
<!---->
<!----><a _ngcontent-c19="" href="javascript:void(0)" class="active parent-menu dropdown-item ng-star-inserted"><span _ngcontent-c19=""> ACME Nursing </span><i _ngcontent-c19="" class="chevronMargin fa fa-chevron-right"></i></a>
<!---->
<!---->
<!---->
<!---->
</li>
<li _ngcontent-c19="" class="ng-star-inserted">
<!---->
<!---->
<!----><a _ngcontent-c19="" href="javascript:void(0)" class="parent-menu dropdown-item ng-star-inserted"><span _ngcontent-c19=""> Dees Nursing & Rehabilitation Center </span><i _ngcontent-c19="" class="chevronMargin fa fa-chevron-right"></i></a>
<!---->
<!---->
<!---->
<!---->
</li>
<li _ngcontent-c19="" class="ng-star-inserted">
<!---->
<!---->
<!----><a _ngcontent-c19="" href="javascript:void(0)" class="parent-menu dropdown-item ng-star-inserted"><span _ngcontent-c19=""> Rehab and Healthcare </span><i _ngcontent-c19="" class="chevronMargin fa fa-chevron-right"></i></a>
<!---->
<!---->
<!---->
<!---->
</li>
<li _ngcontent-c19="" class="ng-star-inserted">
<!---->
<!---->
<!----><a _ngcontent-c19="" href="javascript:void(0)" class="parent-menu dropdown-item ng-star-inserted"><span _ngcontent-c19=""> Nursing and Rehab Center </span><i _ngcontent-c19="" class="chevronMargin fa fa-chevron-right"></i></a>
<!---->
<!---->
<!---->
<!---->
</li>
<li _ngcontent-c19="" class="ng-star-inserted">
<!---->
<!---->
<!----><a _ngcontent-c19="" href="javascript:void(0)" class="parent-menu dropdown-item ng-star-inserted"><span _ngcontent-c19=""> Nursing and Rehab Center </span><i _ngcontent-c19="" class="chevronMargin fa fa-chevron-right"></i></a>
<!---->
<!---->
<!---->
<!---->
</li>
<li _ngcontent-c19="" class="ng-star-inserted">
<!---->
<!---->
<!----><a _ngcontent-c19="" href="javascript:void(0)" class="parent-menu dropdown-item ng-star-inserted"><span _ngcontent-c19=""> Care Nursing & Rehabilitation Ctr </span><i _ngcontent-c19="" class="chevronMargin fa fa-chevron-right"></i></a>
<!---->
<!---->
<!---->
<!---->
</li>
<li _ngcontent-c19="" class="ng-star-inserted">
<!---->
<!---->
<!----><a _ngcontent-c19="" href="javascript:void(0)" class="parent-menu dropdown-item ng-star-inserted"><span _ngcontent-c19=""> Nursing and Rehab Center </span><i _ngcontent-c19="" class="chevronMargin fa fa-chevron-right"></i></a>
<!---->
<!---->
<!---->
<!---->
</li>
<li _ngcontent-c19="" class="ng-star-inserted">
<!---->
<!---->
<!----><a _ngcontent-c19="" href="javascript:void(0)" class="parent-menu dropdown-item ng-star-inserted"><span _ngcontent-c19=""> Management Firm </span><i _ngcontent-c19="" class="chevronMargin fa fa-chevron-right"></i></a>
<!---->
<!---->
<!---->
<!---->
</li>
</ul>
</div>
</div>
<!---->
<div class="ps__rail-x" style="left: 0px; bottom: 0px;">
<div class="ps__thumb-x" tabindex="0" style="left: 0px; width: 0px;"></div>
</div>
<div class="ps__rail-y" style="top: 0px; right: 0px;">
<div class="ps__thumb-y" tabindex="0" style="top: 0px; height: 0px;"></div>
</div>
</div>
</perfect-scrollbar>
<!---->
</aht-navigation>
</li>
</acme-role-facility>
这是我收到的错误:
**Unhandled Exception: OpenQA.Selenium.NoSuchElementException: no such element: Unable to locate element: {"method":"id","selector":".//span[starts-with(@id,'ACME Nursing')]"}
(Session info: chrome=72.0.3626.109)
(Driver info: chromedriver=2.46.628402 (536cd7adbad73a3783fdc2cab92ab2ba7ec361e1),platform=Windows NT 10.0.17134 x86_64)
at OpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError(Response errorResponse)
at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute, Dictionary`2 parameters)
at OpenQA.Selenium.Remote.RemoteWebDriver.FindElement(String mechanism, String value)
at OpenQA.Selenium.Remote.RemoteWebDriver.FindElementById(String id)
at OpenQA.Selenium.By.<>c__DisplayClass16_0.<Id>b__0(ISearchContext context)
at OpenQA.Selenium.By.FindElement(ISearchContext context)
at OpenQA.Selenium.Remote.RemoteWebDriver.FindElement(By by)
at AHT.Browser.FacilityRoleSelect() in C:\Users\che7592\Documents\Visual Studio 2017\Projects\AHT\AHT\Program.cs:line 72
at AHT.Program.Main(String[] args) in C:\Users\che7592\Documents\Visual Studio 2017\Projects\AHT\AHT\Program.cs:line 33**
答案 0 :(得分:1)
选择器.//span[starts-with(@id,'ACME Nursing')]
中没有元素。
您要获取包含ACME Nursing
文本的元素,并且选择器的元素是//span[normalize-space(.)='ACME Nursing']
,其中.
是文本,而normalize-space
则删除空格。
或者://span[normalize-space(.)='ACME Nursing' and @_ngcontent-c19]