UiPath:ブラウザーを閉じる方法1。タブを全て閉じることで終了する方法


ブラウザーを閉じる方法は「Kill Process」で強制的に終了させる方法もありますが、ここではタブを一つずつ閉じていく方法を紹介します。

◆複数タブが開いたブラウザの例

このように複数のタブが開いているブラウザを閉じる方法を以下で説明していきます。

◆シナリオの全体像

 処理の全体像は以下のようになります。
 判定用の変数「chkTab」は既定値を「True」にしています。
 「True」の場合はブラウザーにタブがある状態を示し、タブがすべて閉じられるまで(「False」になるまで)、閉じる動作が繰り返します。
 タブがすべて閉じられる(=ブラウザーも閉じられた)と「chkTab」が「False」になり、この繰り返しのループから出て次の処理に移ります。

変数は以下のように設定しています。


◆シナリオの作成

(1)「繰り返し(後判定)」アクティビティの追加

「繰り返し(後判定)」をアクティビティにドラッグ&ドロップします。
場所:「ワークフロー」⇒「制御」⇒「繰り返し(後判定)」

(2)「繰り返し(後判定)」の条件設定

「条件」に判定用の変数「chkTab」が「True」(タブを閉じられた場合)の間は「本文」内の処理を繰り返すように条件づけます。

(3)「トライ キャッチ」アクティビティの追加

「トライ キャッチ」をアクティビティにドラッグ&ドロップします。
場所:「ワークフロー」⇒「エラー処理」⇒「トライ キャッチ」

以下のような画面が追加されます。


(4)「トライ キャッチ」の「Try」に判定するアクティビティを追加

「Try」部分に「ブラウザをアタッチ」をドラッグ&ドロップします。
場所:「ブラウザー」⇒「ブラウザーにアタッチ」

(5)「ブラウザをアタッチ」の設定

「画面上でブラウザーを指定」をクリックします。

対象のブラウザをクリックすると以下のようになります。
右側にある設定ボタンをクリックし、「セレクターを編集」をクリックします。
セレクターエディターの「title」を「*」(アスタリスク)に変更します。
「title」はページによって異なるので、ワイルドカードにする必要があります。


(6)「タブを閉じる」アクティビティを追加

「タブを閉じる」を「ブラウザをアタッチ」の「実行」内にドラッグ&ドロップします。
場所:「ブラウザー」⇒「タブを閉じる」

こんな感じになります。

(7)「トライ キャッチ」の「Catches」に新しいCatchの追加

「Catches」部分の「新しいCatchの追加」をクリックします。

(8)「Catches」の設定

ここを設定することで、上記のアクティビティでエラーがあった場合にどのような動作をするかを設定できます。
まず「Exception」部分のタブから「System.Exception」をクリックします。
※「System.Exception」はどのようなエラーが起きた場合でもキャッチします。

以下のようになります。
エラーがあった場合に変数「chkTab」に値を入れるように設定します。
「代入」をアクティビティにドラッグ&ドロップします。
場所:「ワークフロー」⇒「制御」⇒「代入」
変数「chktab」に「False」を入れます。
これはブラウザーにタブがない状態の場合にタブが見つからずエラーとなり、そのエラーがキャッチされこのアクティビティが実行されます。
以上、ブラウザのタブを全て閉じてブラウザを終了する方法でした。


おすすめ