selenium webdriver:查找元素问题

6tdlim6h  于 2021-07-14  发布在  Java
关注(0)|答案(1)|浏览(346)

我第一次尝试使用python selenium。
这对你们中的一些人来说是个简单的问题,但我在这里有点失望。。
我会点击一个链接文本,这将打开另一个网页(webdriver ie)
当我检查链接时,我有:

<li class="limarginSP"><a class="spLink ng-binding" href="" ng-click="utility.ngPostForm(trans)">Finance System</a></li>

我试过这个:

from selenium import webdriver
import time

driver = webdriver.Ie(executable_path="IEDriverServer.exe")

# local web site

driver.get("http://path.net") 
t = 5
time.sleep(t)
elem_pyFinSys= driver.find_element_by_link_text("Finance System")
elem_pyFinSys.click()

但这会在我的页面中打开另一个链接
检查下面打开的链接

<a class="navLink ng-binding" href="" ng-click="utility.ngPostForm(supp)">Reporting Subscription</a>

我的问题是如何让正确的元素打开正确的页面?我必须使用internet explorer,因为应用程序无法与其他浏览器一起工作。
提前谢谢

lg40wkob

lg40wkob1#

尝试使用以下定位器之一:

driver.find_element_by_css_selector("limarginSP>.spLink.ng-binding")

driver.find_element_by_css_selector(".limarginSP")
``` `find_element_by_link_text` 并不总是一个好主意,因为可能有许多相同的定位器。

相关问题