我的网页上有两个具有相同类名的元素,并且我试图访问第二个元素,但我无法做到这一点。
跨度看起来像这样:
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission
android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission
android:name="android.permission.WRITE_INTERNAL_STORAGE"/>
<uses-permission
android:name="android.permission.READ_INTERNAL_STORAGE"/>
这部分的代码如下:
<span class="REPORTING_DASHBOARDS__link navMenuLabel ">
Dashboards
</span>
答案 0 :(得分:6)
您必须使用find_elements_
而不是find_element_
来获取所有元素。
find_element
仅返回第一个可能的元素。
dashboards_button = driver.find_elements_by_css_selector(".REPORTING_DASHBOARDS__link.navMenuLabel")[1]
或者如果nth-child与find_element在同一父项下,则使用
dashboards_button = driver.find_element_by_css_selector(".REPORTING_DASHBOARDS__link.navMenuLabel:nth-child(1)")
如果它不在同一父目录下,请将其更改为xpath,
dashboards_button = driver.find_element_by_xpath("//[contains(@class,'REPORTING_DASHBOARDS__link navMenuLabel')][1]")