1

同じページの広告リンク数の X パスの書き方と、HTML コードで区別するための一意の ID と一意の名前がありません。以下に書いています。「クリック」広告に一意の値を指定して、新しいウィンドウで広告を開きます。すべての広告には class="ad" があり、値は動的であるため、すべての広告を 1 つずつ開き、2 つの広告のみを展開し、他のすべての広告が折りたたまれているデータを確認したいので、助けてください。

例:

<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

リンク名を使用できます-

link, '2009 Toyota Camry' 
link, '2010 Mazda MAZDA3 GS ONE OWNER, SU.'
于 2012-10-09T15:09:01.383 に答える
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

私は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
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
}

上記のロジックは、そのページで利用可能なすべてのリンクをクリックします。

于 2012-10-09T15:30:45.130 に答える
0

リンクについては、,, link='text of your link' と書くことで簡単に見つけることができます...うまくいきます

于 2012-10-15T06:52:15.933 に答える