こんにちは、blueです。
SeleniumBasicを扱う際に確認したくなるのがクラスに属するメソッドやプロパティです。
SeleniumBasicにはこれらの情報を知るためのヘルプとしてDocumentationが同封されています。
しかし、内容が英語の為理解がしにくくなっています。
その為今回はスクレピングの際によく使うメソッドやプロパティについて日本語訳したものを紹介します。
VBAを使ったものではありませんが、Seleniumを勉強する為の基本的な書籍です。各言語における基本的なコマンド一覧も記載されていますのでコードを書く際の参考になります。
Selenium Documentationとは
Selenium DocumentaionとはSeleniumのライブラリ情報がまとめられている文書のことです。
この文書はSeleniumをインストールした際にできた以下のフォルダ内にSelenium.chmというファイル名で存在しています。
C:\Users\(ユーザー名)\AppData\Local\SeleniumBasic
ちなみににファイルを開くと以下のような画面になっています。
この方法で各クラスに属するメソッドやプロパティを確認できますが内容は英語名となっています。
Selenium Documentation日本語版
次から各クラスに属するメソッドやプロパティについて日本語訳を記載します。
なおすべてのクラスを紹介するのは大変な量の為代表的なものから記載します。
訳については自動翻訳を利用していますので誤訳はご了承ください。
WebDriver Class
Methods
Name | Description |
ActiveElement | フォーカスを持つ要素、またはフォーカスを持つものがない場合はBODYを返します。 |
AddArgument | ブラウザを起動するためのコマンドラインに付加する引数を追加します。 |
AddExtension | ブラウザに拡張機能を追加する(Firefox、Chromeのみ) |
CacheStatus | html5アプリケーションのキャッシュの状態を取得します。 |
Close | 現在のウィンドウを閉じる。 |
Dispose | リソースを解放する。 |
ExecuteAsyncScript | 現在のフレームまたはウィンドウのコンテキストで、非同期のJavaScriptを実行します。 |
ExecuteScript | 現在選択されているフレームまたはウィンドウのコンテキストでJavaScriptの一部を実行する |
FindElement | 指定されたメソッドを使用して、最初の WebElement を検索します。(SearchContextから継承) |
FindElementBy | 指定された機構と値に一致する最初の子要素を検索します。(SearchContextから継承) |
FindElementByClass | 指定された CSS クラスに合致する最初の要素を検索します。(SearchContextから継承) |
FindElementByCss | 指定されたCSSセレクタに合致する最初の要素を検索します。(SearchContextから継承) |
FindElementById | 指定されたidに合致する最初の要素を検索する。(SearchContextから継承) |
FindElement ByLinkText | 指定されたリンクテキストに一致する最初の要素を検索します。(SearchContextから継承) |
FindElement ByName | 指定された名前に一致する最初の要素を検索します。(SearchContextから継承) |
FindElement ByPartialLinkText | 与えられたリンクテキストの部分に一致する要素のうち、最初のものを探す(SearchContextから継承) |
FindElementByTag | 指定されたタグ名に合致する最初の要素を検索する。(SearchContextから継承) |
FindElementByXPath | 指定されたXPathクエリにマッチする最初の要素を検索します。(SearchContextから継承) |
FindElements | 与えられた機構を使用して、現在のコンテキスト内のすべての要素を検索します。(SearchContextから継承) |
FindElementsBy | 指定された機構と値に一致する全ての子要素を検索します。(SearchContextから継承) |
FindElementsByClass | 指定された CSS クラスに合致する要素を検索する。(SearchContextから継承) |
FindElementsByCss | 指定されたCSSセレクタに合致する要素を検索します。(SearchContextから継承) |
FindElementsById | 指定されたidに合致する要素を検索する。(SearchContextから継承) |
FindElements ByLinkText | 指定されたリンクテキストに合致する要素を検索する。(SearchContextから継承) |
FindElementsByName | 指定された名前に合致する要素を検索する。(SearchContextから継承) |
FindElements ByPartialLinkText | 与えられたリンクテキストの部分に一致する要素のうち、最初のものを探す(SearchContextから継承) |
FindElementsByTag | 指定されたタグの名前に合致する要素を検索する。(SearchContextから継承) |
FindElementsByXPath | 指定されたXPathクエリに合致する要素を検索します。(SearchContextから継承) |
Get | 現在のブラウザセッションでウェブページを読み込む。Openメソッドと同じです。 |
GetClipBoard | クリップボードのテキストを返します。 |
GoBack | ブラウザの履歴を一歩さかのぼる。 |
GoForward | ブラウザの履歴を一歩進める。 |
IsElementPresent | “指定された要素がページのどこかにあるかどうかを確認します。”(SearchContextから継承) |
PageSource | ブラウザが最後に読み込んだページのソースを取得します。 |
PageSourceMatch | 正規表現にマッチする最初の出現箇所を返します。 |
PageSourceMatches | 正規表現に一致するすべての出現箇所を返します。 |
Quit | ブラウザを閉じ、WebDriverを破棄する |
Refresh | 現在のページをリフレッシュする。 |
Send | カスタマイズされたコマンドを送信する |
SendKeys | キー操作のシーケンスをブラウザに送信します。 |
SetBinary | 使用するブラウザの実行ファイルへのパスを設定する |
SetCapability | Webdriverに特定のケイパビリティを設定する |
SetClipBoard | クリップボードのテキストを設定する |
SetPreference | Firefox Webdriverに特定のプリファレンスを設定する |
SetProfile | Firefox Webdriverに特定のプロファイルを設定する |
Start | 新しいSeleniumテストセッションを開始します。 |
StartRemotely | 新しいSeleniumテストセッションをリモートで開始します。 |
SwitchToAlert | ページ上のアラートにフォーカスを移す。 |
SwitchTo DefaultContent | iFrameを含むページでは、ページ上の最初のフレームかメインドキュメントを選択します。 |
SwitchToFrame | インデックス(ゼロベース)、名前、またはWebElementで指定されたフレームにフォーカスを移します。 |
SwitchTo NextWindow | 次のウィンドウにフォーカスを移す。 |
SwitchTo ParentFrame | 現在選択されているフレームの親フレームを選択します。 |
SwitchTo PreviousWindow | 前のウィンドウにフォーカスを移す |
SwitchTo WindowByName | 名前で指定されたウィンドウにフォーカスを移す。 |
SwitchTo WindowByTitle | タイトルで指定されたウィンドウにフォーカスを移す。 |
TakeScreenshot | 現在のウィンドウのスクリーンショットを撮影します |
Until< T> | デリゲート関数がnot nullまたはtrueを返すのを待ちます。 |
Wait | 次のコマンドを実行する前に、指定された時間(ミリ秒単位)を待機する |
WaitForScript | JavaScriptの一部がtrueまたはnullでないことを返すのを待ちます。 |
WaitNotElement | 要素が欠落するのを待つ。(SearchContextから継承) |
Properties
Name | Description |
Actions | アクションクラスの取得 |
BaseUrl | Get で相対 URL を使用するためのベース URL |
Keyboard | キーボード |
Keys | キーポイント |
Manage | ドライバに設定変更を指示する。 |
Mouse | マウス |
Proxy | |
Timeouts | ブラウザの設定を管理します。ブラウザを起動する前に定義しておく必要がある |
Title | 現在のブラウザウィンドウのタイトルを取得します。 |
TouchActions | タッチアクション |
TouchScreen | タッチスクリーン |
Url | ブラウザが現在表示しているURLを取得します。 |
Window | 現在フォーカスされているブラウザウィンドウを操作することができるオブジェクトを取得します。 |
Windows | 開いているブラウザウィンドウのウィンドウハンドルを取得します。 |
WebElement Class
Methods
Name | Description |
AsSelect | WebElementをSelect要素にキャストする |
AsTable | WebElementをTable要素にキャストする |
Attribute | 属性値を取得する。 |
Clear | テキスト入力要素の場合、テキストをクリアする。 |
Click | 要素をクリックします。 |
ClickAndHold | エレメントをクリックし、ホールドします。 |
ClickByOffset | 要素オフセットでクリックします。 |
ClickContext | Rigthは、エレメントをクリックします。 |
ClickDouble | 要素をダブルクリックします。 |
CssValue | CSSプロパティの値を返す |
DragAnd DropToOffset | 要素をオフセットにドラッグ&ドロップする |
DragAndDropTo WebElement | 要素を他の要素にドラッグ&ドロップする |
Equals(Object) | 指定されたインスタンスが等しいとみなされるかどうかを判定する。(Object.をオーバーライドします。Equals(Object)をオーバーライドしています) |
Equals (WebElement) | 2つのWeb要素が等しいかどうかを比較する |
Execute AsyncScript | 現在の要素のコンテキストで、非同期のJavaScriptを実行します。 |
ExecuteScript | 現在の要素のコンテキストで JavaScript を実行します。 |
FindElement | 指定されたメソッドを使用して、最初の WebElement を検索します。(SearchContextから継承) |
FindElementBy | 指定された機構と値に一致する最初の子要素を検索します。(SearchContextから継承) |
FindElement ByClass | 指定された CSS クラスに合致する最初の要素を検索します。(SearchContextから継承) |
FindElementByCss | 指定されたCSSセレクタに合致する最初の要素を検索します。(SearchContextから継承) |
FindElementById | 指定されたidに合致する最初の要素を検索する。(SearchContextから継承) |
FindElement ByLinkText | 指定されたリンクテキストに一致する最初の要素を検索します。(SearchContextから継承) |
FindElement ByName | 指定された名前に一致する最初の要素を検索します。(SearchContextから継承) |
FindElement ByPartialLinkText | 与えられたリンクテキストの部分に一致する要素のうち、最初のものを探す(SearchContextから継承) |
FindElement ByTag | 指定されたタグ名に合致する最初の要素を検索する。(SearchContextから継承) |
FindElement ByXPath | 指定されたXPathクエリにマッチする最初の要素を検索します。(SearchContextから継承) |
FindElements | 与えられた機構を使用して、現在のコンテキスト内のすべての要素を検索します。(SearchContextから継承) |
FindElementsBy | 指定された機構と値に一致する全ての子要素を検索します。(SearchContextから継承) |
FindElements ByClass | 指定された CSS クラスに合致する要素を検索する。(SearchContextから継承) |
FindElements ByCss | 指定されたCSSセレクタに合致する要素を検索します。 |
FindElements ById | 指定されたidに合致する要素を検索する。 |
FindElements ByLinkText | 指定されたリンクテキストに合致する要素を検索する。(SearchContextから継承) |
FindElements ByName | 指定された名前に合致する要素を検索する。(SearchContextから継承) |
FindElements ByPartialLinkText | 与えられたリンクテキストの部分に一致する要素のうち、最初のものを探す(SearchContextから継承) |
FindElements ByTag | 指定されたタグの名前に合致する要素を検索する。(SearchContextから継承) |
FindElements ByXPath | 指定されたXPathクエリに合致する要素を検索します。 |
GetHashCode | この要素のハッシュコードを返す(Objectをオーバーライドします。GetHashCode() .) |
HoldKeys | キーを押しながら |
IsElement Present | “指定された要素がページのどこかにあるかどうかを確認します。”(SearchContextから継承) |
Location | レンダリング可能なキャンバス内の要素の位置を返します。 |
Location InView | ビューポートの原点からの相対的な要素の位置を取得する。 |
ReleaseKeys | キーを離す |
ReleaseMouse | クリックを解除する |
ScrollIntoView | 現在の要素をブラウザウィンドウの可視領域までスクロールします。 |
SendKeys | 要素への入力をシミュレートします。 |
Size | 要素の大きさを返す |
Submit | フォームを送信します。 |
TakeScreenshot | 現在の要素のスクリーンショットを取得します |
Text | 要素のテキストを取得します。 |
TextAsNumber | テキストから解析された数値を返す |
TextMatch | 指定された入力文字列を検索し、pattern パラメータで指定された正規表現に一致するものを探す。 |
TextMatches | 正規表現に一致するすべての出現箇所を返します。 |
Until< T> | デリゲート関数がnot nullまたはtrueを返すのを待ちます。 |
Value | 値属性を返す |
WaitAttribute | 属性待ち |
WaitCssValue | CSS プロパティを待ちます。 |
WaitDisplayed | 要素が表示されるのを待つ。 |
WaitEnabled | 要素が有効化されるのを待つ。 |
WaitForScript | スクリプトがtrueを返すか、nullでないかを待ちます。 |
WaitNot Attribute | 別の属性で待機する |
WaitNot CssValue | 別の CSS プロパティを待ちます。 |
WaitNot Element | 要素が欠落するのを待つ。(SearchContextから継承) |
WaitNotText | 別のテキストを待ちます |
WaitRemoval | Web 要素が DOM から削除されるのを待ちます。 |
WaitSelection | 要素が選択されるかどうかを待機する。 |
WaitText | テキストを待ちます |
Properties
IsDisplayed | ユーザから見える要素かどうか |
IsEnabled | 要素が有効であるかどうか。 |
IsPresent | 要素が存在するかどうか |
IsSelected | 要素が選択されているかどうか。 |
Rect | 要素の大きさを返す |
TagName | 要素のtagNameプロパティを取得する。 |
WebElements Class
Methods
Name | Description |
Add(Object) | リスト内の値を追加する(リストより継承) |
Add (WebElement) | Web要素を追加する |
AddRange | リスト内に複数の値を一度に追加する(リストより継承) |
Attribute | 各要素に対応する属性をリストで返します。(リストより継承) |
Clear | リストをクリアする(リストより継承) |
Contains | リストが値を含む場合、true を返す。(リストより継承) |
Convert< T> | 各値を変換する。(リストより継承) |
CopyTo | 値を配列にコピーします。(リストより継承) |
Distinct | 重複を排除する(リストより継承) |
Execute AsyncScript | 各Web要素に対して非同期でJavaScriptを実行し、すべての結果を返します。 |
ExecuteScript | 各Web要素に対してJavaScriptを実行し、その結果をすべて返します。 |
First | 最初の項目を返す |
GetEnumerator | リスト列挙体を返します。(リストより継承) |
IndexOf | 値のインデックスを返す(リストより継承) |
Insert | インデックスに値を挿入する(リストより継承) |
Last | 最後の項目を返す |
LastIndexOf | 末尾から始まる値のインデックス。(リストより継承) |
Remove | 値を削除する(リストより継承) |
RemoveAt | インデックスにある値を削除する(リストより継承) |
Sort | 要素をソートする(リストより継承) |
Text | 各要素に対応するテキストを含むリストを返す |
ToArray | の値を含む配列を返す。(リストより継承) |
ToExcel | Excelに値をコピーします。対象は、アドレス、ワークシート、範囲です。(リストより継承) |
Values() | の値を含む配列を返す。(リストより継承) |
Values (Object, Int32, Int32) | 各要素を数値に変換したテキストを含むリストを返します。 |
Properties
Name | Description |
Count | 数を返す(リストより継承) |
IsFixedSize | 使用不可(リストより継承) |
IsReadOnly | 使用不可(リストより継承) |
IsSynchronized | レチューン虚偽(リストより継承) |
Item | 指定されたインデックスの WebElement を取得します。(リストより継承) |
SyncRoot | Retuns null(リストより継承) |
Window Class
Methods
Name | Description |
Activate | このウィンドウにフォーカスを移す。 |
Close | 現在のウィンドウを閉じる。 |
Equals | 指定されたインスタンスが等しいとみなされるかどうかを判定する。(Object.をオーバーライドします。Equals(Object)をオーバーライドしています) |
FullScreen | 現在のウィンドウをフルスクリーンにする。 |
GetHashCode | ハッシュコードを返す(Objectをオーバーライドします。GetHashCode() .) |
Maximize | 現在のウィンドウが最大化されていない場合、最大化する。 |
Position | 画面の左上隅を基準としたブラウザウィンドウの位置を取得します。 |
SetPosition | 画面の左上隅を基準とした、ブラウザウィンドウの位置を設定します。 |
SetSize | タイトルバーやウィンドウの境界線を含む、外側のブラウザウィンドウの大きさを設定します。 |
Size | タイトルバーやウィンドウの境界線を含む、外側のブラウザウィンドウの大きさを取得します。 |
SwitchTo NextWindow | 次の利用可能なウィンドウに切り替える |
SwitchTo PreviousWindow | 前にフォーカスしていたウィンドウに切り替える。 |
SwitchTo WindowByName | 他のウィンドウにフォーカスを移す。 |
SwitchTo WindowByTitle | 他のウィンドウにフォーカスを移す。 |
Properties
Name | Description |
Handle | 現在のウィンドウのハンドルを返します。 |
Title | 現在のページタイトルを取得します。 |
SearchConText Class
Methods
Name | Description |
FindElement | 指定されたメソッドを使用して、最初の WebElement を検索します。 |
FindElementBy | 指定された機構と値に一致する最初の子要素を検索します。 |
FindElement ByClass | 指定された CSS クラスに合致する最初の要素を検索します。 |
FindElement ByCss | 指定されたCSSセレクタに合致する最初の要素を検索します。 |
FindElement ById | 指定されたidに合致する最初の要素を検索する。 |
FindElement ByLinkText | 指定されたリンクテキストに一致する最初の要素を検索します。 |
FindElement ByName | 指定された名前に一致する最初の要素を検索します。 |
FindElement ByPartial LinkText | 与えられたリンクテキストの部分に一致する要素のうち、最初のものを探す |
FindElement ByTag | 指定されたタグ名に合致する最初の要素を検索する。 |
FindElement ByXPath | 指定されたXPathクエリにマッチする最初の要素を検索します。 |
FindElements | 与えられた機構を使用して、現在のコンテキスト内のすべての要素を検索します。 |
FindElementsBy | 指定された機構と値に一致する全ての子要素を検索します。 |
FindElements ByClass | 指定された CSS クラスに合致する要素を検索する。 |
FindElements ByCss | 指定されたCSSセレクタに合致する要素を検索します。 |
FindElementsById | 指定されたidに合致する要素を検索する。 |
FindElements ByLinkText | 指定されたリンクテキストに合致する要素を検索する。 |
FindElements ByName | 指定された名前に合致する要素を検索する。 |
FindElements ByPartial LinkText | 与えられたリンクテキストの部分に一致する要素のうち、最初のものを探す |
FindElements ByTag | 指定されたタグの名前に合致する要素を検索する。 |
FindElements ByXPath | 指定されたXPathクエリに合致する要素を検索します。 |
IsElement Present | “指定された要素がページのどこかにあるかどうかを確認します。” |
WaitNotElement | 要素が欠落するのを待つ。 |
SelectElement Class
Methods
Name | Description |
DeselectAll | 選択された項目をすべてクリアします。SELECTが複数選択をサポートしている場合のみ有効です。 |
DeselectByIndex | 要素の “index “属性によって決定されるインデックスによって、オプションを選択解除する。 |
DeselectByText | 表示されているテキストで選択を解除します。 |
DeselectByValue | 指定されたテキストに一致する値を持つオプションの選択を解除します。 |
SelectByIndex | 要素の “index “属性で決定されるインデックスによってオプションを選択します。 |
SelectByText | 表示されているテキストですべてのオプションを選択します。 |
SelectByValue | 値でオプションを選択します。 |
Properties
Name | Description |
AllSelectedOptions | select要素内で選択されたすべてのオプションを取得します。 |
IsMultiple | 親要素が複数選択をサポートしているかどうかを示す値を取得する。 |
Options | select 要素のオプションのリストを取得します。 |
SelectedOption | select 要素内で選択されている項目を取得します。 |
今回のまとめ
今回はSeleniumBasicのDocumentationを日本語版にしました。
Seleniumライブラリには多くのクラスや、メソッドやプロパティが存在します。
スクレイピングをする際にはどうしても必要になりますので参考にしていただければ幸いです。
VBAを使ったものではありませんが、Seleniumを勉強する為の基本的な書籍です。各言語における基本的なコマンド一覧も記載されていますのでコードを書く際の参考になります。
こちらもVBAに関してではないですがクローリング全般について書かれた書籍です。webAPIやOuAuth認証などについても書かれていますので長く勉強したい方は参考にしてください。
↓困ったときは以下が頼りになります。私も利用させてもらってます😊。
SeleniumBasicでのWebスクレイピングに関する記事はこちらをどうぞ
Web-APIを用いたデータ取得に関する記事はこちらをどうぞ
【VBA】Web APIを使ってデータを取得する(OpenWeatherMap)1
【VBA】Web APIを使って時間別天気予報を取得する(気象庁API)
【VBA】Web APIを使ってLINE通知を行う(LINE Notify)1
コメント