指定されたCSSセレクタに一致する最初のWebElement オブジェクトを取得します。
- 構文
- WebElement = WebDriver.FindElementByCss( cssselector, timeout, raise )
- 引数
- cssselector (String)必須
- 取得する要素の CSSセレクタ
- timeout (Long = -1)省略可
- タイムアウト(単位:ms)。raiseにTrueが指定されている場合、時間が過ぎるとエラーが発生します。
- raise (Boolean = True)省略可
- Trueのとき、タイムアウト経過後に例外を発生させる。
- 戻り値
CSSセレクタ
基本セレクタ
全称セレクタ(ユニバーサルセレクタ)
すべての種類の要素に一致します。
*
要素型セレクタ(タイプセレクタ)
HTMLのタグ名で要素に一致します。指定したタグ名の要素すべてが対象となります。
element
以下はタグ名がdivの要素を選択します。
div
<div></div>
IDセレクタ
ID名をつけた要素に一致します。ID名の前に#(シャープ)を付けます。
#idname
以下はID名がcontentの要素を選択します。
#content
<div id="content"></div>
クラスセレクタ
クラス名をつけた要素に一致します。クラス名の前に.(ピリオド)を付けます。
.classname
以下はクラス名がheaderの要素を選択します。
.header
<div class="header"></div>
属性セレクタ
属性を持つ要素
attrという名前の属性を持つ要素を選択します。属性名を[ ]で囲みます。
[attr]
以下は属性にhrefを持つ要素を選択します。
[href]
<a href="http://example.com">Example Domain</a>
属性と値が一致する要素
attrという名前の属性を持ち、属性値がvalueに完全一致する要素を選択します。値は"(ダブルクォーテーション)もしくは'(シングルクォーテーション)で囲みます。
[attr=value]
以下は属性名にhref、その値がhttp://example.comに一致する要素を選択します。
[href="http://example.com"]
<a href="http://example.com">Example Domain</a>
指定文字列が複数の属性値のいずれかに一致する要素
スペースで区切られた項目リストで、うち一つがvalueと完全一致する属性値を持つ要素と一致します。
[attr~=value]
属性の値が一致もしくはハイフンが続く要素
attrという名前の属性値がvalueと完全一致するか、valueで始まり直後にハイフンが続く要素を選択します。言語のサブコードの一致に使われます。
[attr|=value]
以下はlang属性の属性値がenもしくはen-***に一致する要素を取得します。
[lang|="en"]
<html lang="en"></html>
<html lang="en-US"></html>
値が指定文字列で始まる要素
attrの属性値がvalueで始まる要素を選択します。
[attr^=value]
以下はclassという属性で属性値がtestで始まる要素を選択します。
[class^="test"]
<div class="test001"></div>
<div class="test002"></div>
<div class="test003"></div>
値が指定文字列で終わる要素
attrの属性値がvalueで終わる要素を選択します。
[attr$=value]
以下はsrcという属性で属性値が.jpgで終わる要素を選択します。
[src$=".jpg"]
<img src="http://example.com/photo.jpg" />
値に指定文字列を含む要素
[attr*=value]
グルーピングセレクタ
複数セレクタ
複数の要素を,(カンマ)で区切って指定します。element1またはelement2という意味です。
element1, element2
子孫結合子
親とその子孫という形式で指定するセレクタで要素を (半角スペース)で区切ります。要素セレクタ・クラスセレクタ・IDセレクタなどを組み合わせて使用します。
element1 element2
子結合子
親とその直下の要素に一致するセレクタで (半角スペース)で区切ります。親と子は>で区切ります。子孫セレクタはある要素の子孫要素すべてに一致するのに対し、子セレクタはある要素の直下の要素にのみ一致します。
element1 > element2
兄弟結合子
後続兄弟結合子(一般兄弟結合子)
1つ目の要素の後ろに2つ目の要素があり、同じ親の子要素である場合に一致します。2つ目の要素は1つ目の直後である必要はありません。
element1 ~ element2
隣接兄弟結合子(次兄弟結合子)
2つ目の要素が1つ目の要素の直後にあって、同じ親の子要素である場合に一致します。
element1 + element2
列結合子(カラム結合子)
表の特定の列の要素を選択します。
element1 || element2
使い方
divタグ内にあるpタグの要素を取得します。
DIM WebDriver = CREATEOLEOBJ("Selenium.Webdriver")
WITH WebDriver
.Start("chrome")
.Get("http://example.com")
DIM WebElement = .FindElementByCss("div p")
PRINT WebElement.text()
.Quit
ENDWITH
<div>
<h1>Example Domain</h1>
<p>This domain is for use in illustrative examples in documents. You may use this
domain in literature without prior coordination or asking for permission.</p>
<p><a href="https://www.iana.org/domains/example">More information...</a></p>
</div>
This domain is for use in illustrative examples in documents. You may use this domain in literature without prior coordination or asking for permission.