3.6.2. 複数の要素を返す

時には、単一の要素ではなく、複数の要素を取得する必要がありますが、これはセレクタを調整することで実現できます。例.Googleで検索した後、多くの結果が表示され、ユーザーは最初の1つだけでなく、すべての結果を操作したいとします。

ここでは、その方法を簡単に説明します。Google検索の例と同じように、レコーダーを使って、検索結果の中からエントリーを選択します。

images/openrpa_recorder_click_element.png

レコーダーは、あなたがその特定の項目だけを望んでいると仮定し、セレクターはそれを考慮して作られていることに注目してください。

images/openrpa_recorder_change_selector.png

1つだけでなく複数の要素を返すようにするには、まずMaxResultsプロパティを1より大きい数値に変更します(上限はありません)。

images/openrpa_recorder_add_max_results_and_click_open_selector.png

ここで、セレクタの基準を変更し、単一の要素ではなく、要素の配列を返すようにする必要があります。WebElements を扱う場合は、xpathパラメータを変更して、より広範な結果を返すようにすることで実現できます。

images/openrpa_recorder_change_selector_2.png

さて、この広い配列の各要素をループさせるために、Recorderが最初に作成した配列の中に、別のGetElementActivityを組み込みます。

備考

レコーダが動作する技術に関連する GetElement Activity を使用します。Windowsの要素を使用する場合、Windows.GetElementでなければなりません。他の技術についても同様です。OpenRPA.IE.GetElement, OpenRPA.Image.GetElement, OpenRPA.NM.GetElementなど。

images/openrpa_recorder_add_get_element.png

新しく作成したGetElementの セレクタを開くと、左側にエレメント ツリーがあり、操作するものをさらに選択することができます。ハイライトボタンを使ってデバッグし、正しい要素が選択されているかどうかを確認します。

images/openrpa_recorder_elements_highlighted.png

ここで、特定のエントリごとにさらなる自動化が必要な場合、それらのアクティビティを内側のGetElement内に追加します。