- 概要
- UI Automation
- UI Automation を使用して自動化されるアプリケーションと技術
- プロジェクトの対応 OS
- UI-ANA-016 - [ブラウザーを開く] に使用されている URL を検出
- UI-ANA-017 - [エラー発生時に実行を継続] の値が True
- UI-ANA-018 - OCR/画像関連のアクティビティのリスト
- UI-DBP-006 - コンテナーの使用
- UI-DBP-013 - Excel の自動化方法の誤用
- UI-DBP-030 - セレクター内での変数の使用禁止
- UI-PRR-001 - クリックをシミュレート
- UI-PRR-002 - 入力をシミュレート
- UI-PRR-003 - [アプリケーションを開く] の誤用
- UI-PRR-004 - ハードコードされた待機時間
- UI-REL-001 - セレクター内の大きいインデックス値
- UI-SEC-004 - メール アドレスのデータを含むセレクター
- UI-SEC-010 - アプリ/URL の制限
- UI-USG-011 - 許可されていない属性
- UX-SEC-010 - アプリ/URL の制限
- UX-DBP-029 - セキュリティで保護されていないパスワードの使用
- UI-PST-001 - [プロジェクト設定] の監査ログ レベル
- UiPath ブラウザー移行ツール
- クリッピング領域
- Computer Vision レコーダー
- アクティビティの索引
- アクティベート
- アンカー ベース
- ブラウザーにアタッチ
- ウィンドウにアタッチ
- ユーザー入力をブロック
- 吹き出し
- チェック
- クリック
- 画像をクリック
- 画像クリック トリガー
- OCR で検出したテキストをクリック
- テキストをクリック
- クリック トリガー
- アプリケーションを閉じる
- タブを閉じる
- ウィンドウを閉じる
- コンテキスト対応のアンカー
- 選択されたテキストをコピー
- 要素属性変更トリガー
- 要素の存在を確認
- 要素スコープ
- 要素ステート変更トリガー
- UI ツリーをエクスポート
- 構造化データを抽出
- 子要素を探す
- 要素を探す
- 画像を探す
- 一致する画像を探す
- OCR でテキスト位置を探す
- 相対要素を探す
- テキスト位置を探す
- アクティブ ウィンドウを取得
- 親要素を取得
- 属性を取得
- イベント情報を取得
- クリップボードから取得
- フル テキストを取得
- OCR でテキストを取得
- パスワードを取得
- 位置を取得
- ソース要素を取得
- テキストを取得
- 表示中のテキストを取得
- 前に戻る
- 次に進む
- ホームに移動
- Google Cloud Vision OCR
- ウィンドウを隠す
- 強調表示
- ホットキー トリガー
- ホバー
- 画像上でホバー
- OCR で検出したテキスト上でホバー
- テキスト上でホバー
- 画像の存在を確認
- 画面上で指定
- .NET コードを挿入
- JS スクリプトを挿入
- ActiveX メソッドを呼び出し
- キー操作トリガー
- 画像を読み込み
- ウィンドウを最大化
- Microsoft Azure ComputerVision OCR
- Microsoft OCR
- Microsoft Project Oxford Online OCR
- ウィンドウを最小化
- イベントを監視
- マウス トリガー
- ウィンドウを移動
- URL に移動
- OCR でテキストの存在を確認
- 要素が出現したとき
- 要素が消滅したとき
- 画像が出現したとき
- 画像が消滅したとき
- アプリケーションを開く
- ブラウザーを開く
- ブラウザーを更新
- ユーザー イベントを再生
- ウィンドウを復元
- 画像を保存
- 項目を選択
- 複数の項目を選択
- ホットキーを押下
- クリッピング領域を設定
- フォーカスを設定
- テキストを設定
- クリップボードに設定
- Web 属性を設定
- ウィンドウを表示
- プロセスを開始
- システム トリガー
- スクリーンショットを作成
- Tesseract OCR
- テキストの存在を確認
- ツールチップ
- 文字を入力
- SecureString で文字を入力
- フォアグラウンドを使用
- 属性を待つ
- 要素の消滅を待つ
- 画像の消滅を待つ
- アプリケーション イベント トリガー
- ブラウザー ダイアログ スコープ
- チェック/チェック解除
- アプリのステートを確認
- 要素を確認
- クリック
- クリック イベント トリガー
- ドラッグ アンド ドロップ
- 表データを抽出
- 繰り返し (各 UI 要素)
- 属性を取得
- 属性を取得 (汎用)
- ブラウザーのデータを取得
- クリップボードを取得
- テキストを取得
- URL を取得
- URL に移動
- 強調表示
- ホバー
- JS スクリプトを挿入
- キーボード ショートカット
- キー押下イベント トリガー
- マウス スクロール
- ブラウザー内を移動
- 項目を選択
- ブラウザーのデータを設定
- クリップボードに設定
- ランタイム ブラウザーを設定
- テキストを設定
- スクリーンショットを作成
- 文字を入力
- アプリケーション/ブラウザーを使用
- UI Automation API を使用してブラウザー検索を実行し、結果を取得する
- Web の閲覧
- 画像を検索する
- 画像をクリックする
- イベントをトリガーおよび監視する
- ファイルを作成して上書きする
- HTML ページ: 情報を抽出して操作する
- ウィンドウの操作
- リスト項目の選択の自動化
- ウィンドウ要素を探して操作する
- テキスト操作の自動化を行う
- 画像を読み込んで処理する
- マウスでアクティブ化する操作を管理する
- アプリケーションランタイムの操作を自動化する
- ローカル アプリケーションの自動実行
- ブラウザーのナビゲーション
- Web オートメーション
- トリガー スコープの例
- DevExpress での UI Automation の有効化
- Computer Vision Local Server
- モバイル オートメーション
- ターミナル

UI Automation のアクティビティ
ブラウザー ダイアログ スコープ
UiPath.UIAutomationNext.Activities.NBrowserDialogScope
アラート、確認、プロンプトなどの JavaScript ダイアログをキャプチャして処理します。このアクティビティは、ブラウザー ダイアログを生成するアクティビティのスコープとして使用する必要があります。そのため、ダイアログをトリガーするアクティビティは [ブラウザー ダイアログ スコープ] アクティビティの本体に配置する必要があります。
このアクティビティは [アプリケーション/ブラウザーを使用] アクティビティに追加する必要があります。
デザイナー パネル
-
[ダイアログの種類] ドロップダウン メニューから、[ブラウザー ダイアログ スコープ] アクティビティで処理する JavaScript ブラウザー ダイアログの種類を選択します。
- アラート
- 確認
- プロンプト
- ダイアログの応答 - JavaScript の確認ダイアログへの応答です。[キャンセル] または [OK] です。[確認] または [プロンプト] のダイアログの種類でのみ使用できます。
- プロンプトの応答テキスト - JavaScript のプロンプト ダイアログのテキスト応答です。[プロンプト] のダイアログの種類でのみ使用できます。
- ダイアログ メッセージ - ダイアログ スコープによって処理されるダイアログ メッセージを格納する文字列出力変数です。
プロパティ パネル
タイミング
-
ダイアログの表示待機のタイムアウト - エラーをスローする前に、ダイアログが表示されるまで待機する時間を秒単位で指定します。既定値は 30 秒です。
オプション
-
エラー発生時に実行を継続 - アクティビティでエラーが発生した場合でも、オートメーションを継続するかどうかを指定します。このフィールドでは、
Boolean
値 (True、False) のみがサポートされています。既定値は False です。そのため、フィールドが空白でエラーが発生すると、プロジェクトの実行が停止します。値を True に設定すると、プロジェクトの実行はエラーに関係なく継続されます。
業務プロセスのオートメーションにおいて、ブラウザー ダイアログが表示されるために現在のブラウザー ページの実行がブロックされることがあります。通常、ユーザーはブラウザー ダイアログを閉じて、ダイアログ メッセージを確認し、後でビジネス シナリオで使用できるようにします。
Windows プロジェクトの場合、この種類のシナリオを処理するには、[アプリケーション/ブラウザーを使用] コンテナー アクティビティで [ウィンドウ アタッチ モード] を [アプリケーション インスタンス] に設定し、Active Accessibility (AA) UI フレームワークを使用してブラウザー ダイアログ セレクターを生成します。
しかし、クロスプラットフォーム プロジェクト (Studio Web を含む) の場合は、この種類のシナリオを処理するためのソリューションがありませんでした。
JavaScript には、アラート、確認、プロンプトの 3 種類のポップアップ ボックスがあります。[ブラウザー ダイアログ スコープ] アクティビティは、これらの種類のダイアログを処理することができ、ブラウザー ダイアログを生成するアクティビティのスコープとして使用する必要があります。
[ブラウザー ダイアログ スコープ] アクティビティを [アプリケーション/ブラウザーを使用] アクティビティ内に追加し、ダイアログをトリガーするアクティビティを [ブラウザー ダイアログ スコープ] アクティビティの本体に配置する必要があります。
アラート ダイアログは、情報をユーザーに確実に伝えるために使用します。ダイアログが表示された場合、操作を続けるには [OK] ボタンをクリックする必要があります。そうしないと実行がブロックされます。
次のように [ブラウザー ダイアログ スコープ] アクティビティを設定し、送信ボタンをクリックしたときにトリガーされるアラート ダイアログを処理することができます。
確認ダイアログは、ユーザーが何かを検証または承認する必要がある場合に使用します。ダイアログが表示された場合、操作を続けるには [OK] ボタンまたは [キャンセル] ボタンをクリックする必要があります。
[ブラウザー ダイアログ スコープ] アクティビティを次のように設定することで、Submit ボタンをクリックしたときにトリガーされる確認ダイアログを処理できます。
プロンプト ダイアログは、操作のためにはユーザーがテキストを入力する必要がある場合に使用します。ダイアログが表示された場合、操作を続けるには、入力値を入力した後に [OK] または [キャンセル] をクリックする必要があります。
まれに、ユーザーがボタンをクリックすると、1 つのページで複数のダイアログが 1 つずつ順番に開くことがあります。次のシナリオについて考えてみましょう。
-
[Submit Data] ボタンをクリックすると、ユーザーに名前を入力するよう求めるプロンプト ダイアログが開きます。
-
[OK] ボタンを押してプロンプト ダイアログを閉じた後、送信操作が終了すると、アラート ダイアログが表示されます。
[ブラウザー ダイアログ スコープ] アクティビティを使用すると、複数のダイアログ スコープを入れ子にすることで、この状況を処理できます。アクティビティは、処理するダイアログがページに表示される順序と同じ順序で配置する必要があります。すべてのダイアログが処理されると、ワークフローが続行されます。上記のシナリオの場合、次のように作成します。
-
まず、最初のダイアログ (この場合はプロンプト ダイアログ) を処理する [ブラウザー ダイアログ スコープ] を作成します。
-
最初のスコープ内に、2 番目のダイアログ (この場合はアラート ダイアログ) を処理する 2 つ目の [ブラウザー ダイアログ スコープ] を作成します。
-
2 番目のスコープ内に、ダイアログをトリガーするアクティビティを配置します。この場合は、[Submit Data] ボタンのクリックです。
[ブラウザー ダイアログ スコープ] アクティビティ以外に、[アプリケーション/ブラウザーを使用] アクティビティにブラウザー ダイアログの処理オプションを追加しました。
アプリ カードの新しい [ダイアログの処理] 設定では、ブラウザー ダイアログを自動的に閉じる方法 (閉じるダイアログの種類、および確認ダイアログとプロンプト ダイアログに対して指定する応答) をユーザーが記述できます。
-
アラートを閉じる
-
確認ダイアログを閉じる + 確認ダイアログへの応答
-
プロンプト ダイアログを閉じる + プロンプトの応答テキスト + プロンプト ダイアログへの応答
同様のプロジェクト設定が [ダイアログの処理] に追加されました。これは、[アプリケーション/ブラウザーを使用] の [ダイアログの処理] オプションの既定値として機能します。
-
Windows プロジェクト: [UI Automation モダン] > [アプリケーション/ブラウザー]
-
クロスプラットフォーム プロジェクト: [UI オートメーション] > [アプリケーション/ブラウザー]
複数の [ブラウザー ダイアログ スコープ] アクティビティと、[ダイアログの処理] 機能を持つアプリ カードを入れ子にする場合、ダイアログの処理方法を決定するために、いくつかの点に留意することが重要です。
-
[ブラウザー ダイアログ スコープ] アクティビティは、アプリ カードの [ダイアログの処理] オプションよりも優先されます。
-
[ブラウザー ダイアログ スコープ] アクティビティが入れ子になっている場合、複数のダイアログは出現順に処理されます。つまり、最初のダイアログ スコープで 1 番目のダイアログ、2 番目のダイアログ スコープで 2 番目のダイアログというように処理されます。
-
[ダイアログの処理] が含まれる入れ子になったアプリ カードは互いに上書きされます。つまり、内側のアプリ カードによって外側のアプリ カードの設定が上書きされます。たとえば、最上位のアプリ カードで、ワークフロー全体を通してすべてのダイアログを [キャンセル] で閉じるように設定します。その一方で、ワークフローの一部に対して、有効期間の短いアプリ カードを最上位のアプリ カード内で使用して、確認ダイアログに [OK] で同意できます。こうすることにより、ワークフローのその部分でのみ、ダイアログの処理を変更できます。アラートとプロンプトは、引き続き最上位のアプリ カードに従って閉じられます。
ブラウザー ダイアログが表示される場合に、ダイアログを処理できる [ブラウザー ダイアログ スコープ] と、[ダイアログの処理] が含まれるアプリ カードが複数存在する場合、ダイアログを処理する [ブラウザー ダイアログ スコープ] またはアプリ カードは次のように選択されます。
-
1 つ目の (最も外側の) [ブラウザー ダイアログ スコープ] アクティビティ: このアクティビティには一致するダイアログの種類があり、まだダイアログをキャプチャしていません。
-
[ブラウザー ダイアログ スコープ] が見つからない場合は、そのダイアログの種類を処理するように設定された最後の (最も内側の) アプリ カードが使用されます。
-
実行可能な [ブラウザー ダイアログ スコープ] またはアプリ カードが見つからない場合、ダイアログは処理されず、ユーザーに表示されます。