有没有一种方法可以使用已经识别的元素来识别网络元素 selenium ?

xzlaal3s  于 2022-11-10  发布在  其他
关注(0)|答案(1)|浏览(163)

我有一种元素是使用Python Selify识别出来的。
代码如下:

driver.get("https://stackoverflow.com/")
element = driver.find_element(By.XPATH, "//a[@class="s-topbar--logo js-gps-track"])

有没有一种方法可以使用已经识别的元素来识别PYTHONSE中的Web元素?使用任何可能的方法。子元素或同级元素。它可以使用XPath、css_selector或任何方式。上面只是一个示例代码,仅出于示例目的使用了XPath。

ujv3wf0j

ujv3wf0j1#

我们可以根据父元素示例和一些子元素属性找到子元素,这与我们定位常规元素的方式类似。这既可以使用XPath选择器完成,也可以使用CSS选择器完成。
例如,假设子元素是divid=child
使用XPath定位该元素如下所示:

driver.get("https://stackoverflow.com/")
parent_element = driver.find_element(By.XPATH, "//a[@class='s-topbar--logo js-gps-track']")
child_element = parent_element.find_element(By.XPATH, ".//div[@id='child']")

这里唯一的两个重要变化是:
1.我们将find_element方法应用于parent_element对象,而不是driver对象。
1.XPath以点.开始,以使XPath相对于当前节点。
有关XPath相对定位器的更多解释,请参阅here如何使用css选择器或here

相关问题