簡體   English   中英

如何使用selenium webdriver找到偽元素的父母?

[英]How do I find parents of pseudo element using selenium webdriver?

我想檢索偽元素的web元素 (如果它可以命名為parent),但據我所知, selenium搜索web元素 方法不適合搜索偽元素
但是, JavaScript可以自由地操作偽元素 ,所以我想問一下,如果有一個方法可以在JavaScript中返回父元素的 css selector / xpath for pseudo element (更准確地說是“:: after”)。
換句話說,我有這個:

<html>
<body>
<label id="parent">
<span> Some text </span>
::after
</label>
</body>
</html>

而且我想得到:“#parent”

先感謝您。

如果您需要根據span的文本選擇父級,那么您可以使用以下內容:

driver.findElement(By.xpath("//label[.//span[text()='Some Text']]"));

上面的代碼將幫助您找到帶有text =“Some Text”的span后面的標簽。

如果你不確定標簽,並且你確定使用javascript獲得結果。 嘗試使用以下語法在selenium中執行JavaScript代碼:(Python)

driver.execute_script("document.querySelector('#item'), ':after'")

根據您的要求更新腳本以查找父級。

如果這對您沒有幫助,請在下面的評論中告訴我。

首先查找子元素並將上下文節點添加到子元素,如下所示:

 WebElement child = driver.findElement(By.xpath("xpath of child")); WebElement parent = child.findElement(By.xpath("./..")); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM