我正在尝试使用硒和Chromedriver单击网站上的元素。对于其他元素,我已经可以通过使用它们的相对Xpath来单击。但是,当我尝试复制新元素的xpath时,它会复制绝对Xpath,这给了我一个错误。
我尝试访问的部分是:
<div class="tile transferMarketTile">
<div class="loadingSpinner"></div>
<header>
<h1 class="tileHeader">Search the Transfer Market</h1>
</header>
<div class="tileContent"></div>
<div class="tileDisabled" style="display: none;">
<div class="textField tileDisabledMessage"></div>
</div>
</div>
到目前为止,我尝试使用以下方法单击元素:
WebElement element = driver.findElement(By.xpath("/html/body/section/article/div[1]/div[2]"));
transfers.click();
我使用的是我使用Chrome扩展程序发现的相对xpath,但这也不起作用。
我想知道是否有解决办法。感谢您的任何帮助,并在此先感谢您。
您可以通过以下方式选择网络元素,
您可以先选择“唯一父标签”,然后直接访问所需的标签
driver.findElement(By.xpath("//div[contains(@class,'transferMarketTile')]/.//h1")).click();
如果页面中可见的文本是唯一的,则可以与Xpath中的text()选项一起使用
driver.findElement(By.xpath("//*[text()='Search the Transfer Market']")).click();
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句