gpt4 book ai didi

c# - 如何使用 xpath 为多个 div 查找元素

转载 作者:太空宇宙 更新时间:2023-11-03 15:02:09 25 4
gpt4 key购买 nike

尝试选择下面的元素时遇到一点问题:

<div class="x-layer x-combo-list " id="ext-gen452" style="position: absolute; z-index: 11000; visibility: visible; left: 89px; top: 66px; width: 398px; height: 20px;">
<div class="x-combo-list-inner" id="ext-gen454" style="width: 398px; overflow: auto; height: 20px;">
<div ext:qtip="xxxWebService@xxx.com" class="x-combo-list-item x-combo-selected">xxxWebService@xxx.com
</div>
</div>
</div>

我希望能够使用 ext:qtip = "xxxWebService@xxx.com"但它一直说它找不到该元素,我可以就我需要做什么才能找到一些指导吗元素好吗?

    WebDriverWait waitAgent = new WebDriverWait(_driver, TimeSpan.FromSeconds(2));
waitAgent.Until(ExpectedConditions.ElementToBeClickable(By.XPath(("//div/div/div*[@ext:qtip='xxxWebService@xxx.com]'))))
.Click();

最佳答案

我觉得 xpath 有一个小问题你用作:

By.XPath(("//div/div/div*[@ext:qtip='xxxWebService@xxx.com]')))

您已经使用了div*其中 *似乎没有必要。此外关闭"失踪和结束'放错地方了。当您再次向下遍历 DOM 时通过不同div//div/div/div我们更愿意使用 id parent 的div这在 DOM tree 中是独一无二的.因此,以下代码块使用属性 ext:qtip = "xxxWebService@xxx.com"根据您的要求可以满足您的目的。

WebDriverWait waitAgent = new WebDriverWait(_driver, TimeSpan.FromSeconds(5));
waitAgent.Until(ExpectedConditions.ElementToBeClickable(By.XPath("//div[@id='ext-gen454']/div[@ext:qtip='xxxWebService@xxx.com']"))).Click();

关于c# - 如何使用 xpath 为多个 div 查找元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45709266/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com