1

如何为同一页面上的广告链接数量编写 X-path 并且在 HTML 代码中没有唯一的 id 和唯一的名称来区分,我写在下面,请为“点击”广告提供唯一值并在新窗口中打开广告,由于所有广告都有 class="ad" 并且值是动态的,请帮帮我,因为我想一一打开所有广告并验证其中的数据我只展开了两个广告,所有其他广告都折叠了

例子:

<div class="result hlisting">

<div class="result hlisting">

<div class="info">

<h2>

#11856006:

<a class="ad" href="http://www.performancecars.ca/index.php/details/11856006/2009-Toyota-Camry.html">2009 Toyota Camry</a>

</h2>

<span class="price"> 14.584 CAD </span>

<p class="address">

<b>Date: </b>

2012-10-09 13:29:01 

</p>

</div>

<p class="description">

<p class="data">

<div class="clear"> </div>

<hr>

</div>

<div class="result hlisting">

<div class="result hlisting">

<div class="info">

<h2>

#11930827:

<a class="ad" href="http://www.performancecars.ca/index.php/details/11930827/2010-Mazda-MAZDA3.html">2010 Mazda MAZDA3 GS ONE OWNER, SU.</a>

</h2>

<span class="price"> 14.200 CAD </span>

<p class="address">

</div>

<p class="description">

<p class="data">

<div class="clear"> </div>

<hr>

</div>

<div class="result hlisting">

<div class="result hlisting">
4

5 回答 5

0
List<WebElement> allLinks=driver.findElements(By.className("ads"));
for(WebElement e:ele)
{
    e.click();  //click on ad link
    //do your operations on particular ad page
    //go to home page again
}

The above logic will click on every link available on that page.

于 2012-10-09T15:30:45.130 回答
0

如果您知道链接的文本,您可以尝试类似

selenium.click(selenium.getAttribute("//*[text()='" + link + "']/ancestor::a@href") + " _blank");

要在新窗口中打开,您需要附加_blank到 href。

如果您想点击页面中的所有链接,无论文本是什么,只需遍历 xpath 计数

selenium.click(selenium.getAttribute("xpath=(//a)[" + iterator + "]@href") + " _blank");
于 2012-10-15T07:20:02.803 回答
0

对于链接,你可以简单地通过写作来定位,链接='链接的文本'......它工作正常

于 2012-10-15T06:52:15.933 回答
0

我会尝试使用 css 选择器:

String toyotaCss = "a[href='http://www.performancecars.ca/index.php/details/11856006/2009-Toyota-Camry.html']"
String mazdaCss="a[href='http://www.performancecars.ca/index.php/details/11930827/2010-Mazda-MAZDA3.html']";

希望这对你有用

于 2012-10-09T16:13:36.490 回答
0

您可以使用链接名称 -

link, '2009 Toyota Camry' 
link, '2010 Mazda MAZDA3 GS ONE OWNER, SU.'
于 2012-10-09T15:09:01.383 回答