私はhtmlコードを持っています:
<div class="description">
<h3><strong>Samsung</strong> Galaxy SII (I9100)</h3>
<div class="phone_color"> ... </div>
...
</div>
Selenium 2(WebDriver)を使用して/h3>タグからSamsungGalaxy SII(I9100)の値を取得したい
誰かがそれを行う方法を知っていますか?
これはC#で書かれていますが、Javaに変換するのは難しいことではありません。
/** Declare variables **/
string descriptionTextXPath = "//div[contains(@class, 'description')]/h3";
/** Find the element **/
IWebElement h3Element = driver.FindElement(By.XPath(descriptionTextXPath));
/** Grab the text **/
string descriptionText = h3Element.Text;
'description'クラスを持つ他のdiv要素があるかどうかによっては、結果をさらに微調整する必要がある場合があります。
念のため:
さらに使用するための説明として機能するページ上のすべてのdivを見つけるには、次のようにします。
/** Declare XPath variable **/
string descriptionElementXPath = "//div[contains(@class, 'description')]";
/** Grab all description div elements **/
List<IWebElement> descriptionElements = driver.FindElements(By.XPath(descriptionElementXPath ));
次に、forloopを使用して各要素を調べ、必要なデータを取得できます。
以下は、上記のC#コードのJavaへの変換です。
/**変数を宣言します**/
String descriptionTextXPath = "//div[contains(@class, 'description')]/h3";
/**要素を検索します**/
IWebElement h3Element = driver.findElement(By.xpath(descriptionTextXPath));
/**テキストを取得します**/
String descriptionText = h3Element.toString();
また、
String descriptionText = h3Element.getText();
WebElement divElement = driver.findelement(By.classname("description"));
String str = divElement.getText();
System.out.println(str);
これは完璧です..それは役に立ちました..ありがとう:)
WebElement divElement = driver.findelement(By.classname("description"));
String str = divElement.getText();
enter code here
strには値が含まれます。
webDriver.findElement(By.tagName("h3"));