当嵌入到 span/li & class 中时,如何定位 Web 元素



下面是我的代码:

<div class="rightMenu">
<ul>
<!-- ngRepeat: item in tab.rightMenuList -->
<li class="dropdown ng-scope" on-toggle="toggled(open)" dropdown="" ng-repeat="item in tab.rightMenuList">
<a class="dropdown-toggle" dropdown-toggle="" ng-click="item.click()" href="" aria-haspopup="true" aria-expanded="false">
<!-- ngInclude: item.iconUrl -->
<span class="iconText ng-binding bvTextColor" font-color="">Cancel</span>
</a>
<ul class="dropdown-menu ng-hide" ng-show="(item.dropDownMenu.length > 0)">
<!-- ngRepeat: sort in item.dropDownMenu -->
</ul>
<ul class="dropdown-menu ng-hide" ng-show="(item.replyOptions.length > 0)">
<!-- ngRepeat: option in item.replyOptions -->
</ul>
</li>
<!-- end ngRepeat: item in tab.rightMenuList -->
<li class="dropdown ng-scope" on-toggle="toggled(open)" dropdown="" ng-repeat="item in tab.rightMenuList">
<a class="dropdown-toggle" dropdown-toggle="" ng-click="item.click()" href="" aria-haspopup="true" aria-expanded="false">
<!-- ngInclude: item.iconUrl -->
<span class="iconText ng-binding bvTextColor" font-color="">Save</span>
</a>

现在我想找到使用 Selenium Web 驱动程序嵌入在锚标签中的"保存"。 请帮我解决enter code here

browser = webdriver.Firefox()
element = browser.find_element_by_css_selector("div.rightMenu > ul > li:nth-child(2) > a > span")
print element.text

在运行之前,请尝试使用 chrome 控制台窗口对其进行测试。使用 jquery:

$("div.rightMenu > ul > li:nth-child(2) > a > span).text()

我不确定第 n 个孩子(2),我假设它从 1 开始而不是从 0 开始。您也可以尝试"li:last-child"它是否最后li

最新更新