カスタム セレクターを作成する

Power Automate を使用すると、ユーザーはセレクターを自動的に作成できますが、特定のシナリオでは手動でセレクターを作成する必要があります。 一般的なシナリオは、動的コンテンツを表示するアプリケーションの自動化です。

カスタム セレクターが必要な場合は、既存のセレクターを変更するか、ゼロから作成することができます。

既存のセレクターを編集するには、適切な UI 要素を選択し、編集するセレクターを選択します。

セレクターのダイアログのスクリーンショット。

UI 要素の複数のセレクターを作成できます。 セレクターが失敗するたびに、Power Automate は定義された順序で次のセレクターを使用します。 UI 要素にセレクターをさらに追加するには、再キャプチャするセレクター ボタンを使用して新しいセレクターをキャプチャするか、既存のセレクターのコピーを作成します。 コピーを作成するには、既存のセレクターを右クリックして、コピーを作成する を選択します。

新しいセレクターをキャプチャし、既存のセレクターのコピーを作成するためのボタンのスクリーンショット。

セレクターでは、> 表記を使用して選択した要素の階層構造を示します。 セレクターの各要素は、左側の要素に含まれ、次の形式で表示されます。

element[Attribute1=”Attribute1Name”][Attribute2=”Attribute2Name”]...[Attributen=”AttributenName”]

要素の属性はそれを一意に記述し、同じアプリケーション内の他の要素と区別します。 属性を有効にしたり無効にしたりすることで、セレクターの対象となるアプリケーション コンポーネントを変更することができます。

Note

Web セレクターとデスクトップ セレクターの構造と機能は同じです。 それらの主な違いは、使用可能な属性です。 Web セレクターは HTML の属性を使用しますが、デスクトップ セレクターはアプリケーションのデザインに応じて異なる種類の属性を使用します。

Power Automate では、アプリケーション コンポーネントを正確に指定するために、複数のレベルのセレクタを使用しています。

セレクターは、アプリケーションまたは Web ページ内のコンポーネントの正確な場所を記述するツリー構造を使用します。 各レベルは、上位レベルの子であり、下位レベルのセレクターの親です。 下位レベルのセレクターは、処理するコンポーネントを記述します。

この機能により、Power Automate は同じアプリケーション内の類似した属性を持つコンポーネントと区別することができます。 セレクターのレベルを無効または有効にすることで、Power Automate がコンポーネントを検索する場所を変更することができます。

例えば、次のセレクターは、メモ帳ウィンドウの ファイル メニュー オプションを特定します。 セレクターの最初の 2 つのレベルは、ウィンドウのペインとメニュー バーを表し、3 つ目のレベルは、ファイル オプションを表します。

Note

メモ帳ウィンドウとペインは異なる UI 要素ですが、親子の関係にあります。

メモ帳ウィンドウのファイル メニュー オプションを正確に示すセレクターのスクリーンショット。

Notes.txt という名前のメモ帳ウィンドウで作業するためにセレクターを編集するとします。 この機能をを使用するには、セレクターの 名前 属性を Notes.txt - Notepad に変更します。 新しいセレクターは次のようになります :desktop > window[Name="Notes.txt - Notepad"][Process="Notepad"]

アップデートされたメモ帳セレクターのスクリーンショット。

カスタム セレクターでの演算子の使用

前の例では、セレクターは特定のタイトルのメモ帳ウィンドウに配置されました。 セレクターをより動的にするには、等しい演算子を他の演算子や正規表現で置き換えます。

使用可能なすべてのセレクター演算子のスクリーンショット。

等しい演算子は、セレクターに特定のハードコードされた値を検索させます。 この機能は静的アプリケーションでは効果的ですが、ハード コーディングされた値は動的アプリケーションの障壁になる可能性があります。

次を含む演算子を使用して、固定値を持たないが、常に特定のキーワードを含む要素を特定します。 たとえば、含む演算子をメモ帳セレクターに適用すると、すべてのメモ帳ウィンドウで機能するようになります。

メモ帳のセレクタに表示される「含む」演算子のスクリーンショット。

等しい含むなど演算子以外にも、Power Automate には 4 つの演算子が用意されています。

  • 等しくない: 属性に特定の値以外の値が含まれているかどうかを確認します。
  • で始まる: 属性に特定の文字、キーワード、またはフレーズで始まる値が含まれているかどうかを確認します。
  • で終わる: 属性に特定の文字、キーワード、またはフレーズで終わる値が含まれているかどうかを確認します
  • 正規表現の一致: 属性にカスタム正規表現に一致する値が含まれているかどうかを確認します。 Power Automate の正規表現エンジンは .NET です。 正規表現に関する詳細については、正規表現言語 - クイック リファレンス を参照してください。

カスタム セレクターでの変数の使用

さまざまな演算子とは別に、Power Automate を使用すると、変数を使用して動的セレクターを作成できます。 セレクターの属性の値が前のアクションの計算と結果に依存する場合は、ハード コーディングされた値を変数に置き換えます。

セレクターで変数を使用するには、パーセント記号 (%) で囲まれた名前を手動で入力するか、変数ボタンを使用します。 変数は、ビジュアル エディターとテキスト エディターの両方で使用できます。 パーセンテージ表記の詳細については、変数と % 表記の使用 を参照してください。

メモ帳の例の Name 属性で変数を使用する場合、セレクターは、:desktop > window[Name="%WindowName%"][Process="Notepad"] になります。

メモ帳セレクターの変数のスクリーンショット。