見出し画像

Modern Browser Automation ‐ 問題と解決策 第5回 ‐ ファイルダウンロードした後、ブラウザーモードが機能しない問題

Blue Prism公式ブログをご覧いただき、誠にありがとうございます。プロフェショナルサービスのAkiです。
このシリーズはModern Browser Automation(Edge, Chrome, Firefoxの自動化)の「起こり得る」問題点とそれぞれの解決策についてご紹介します。

第5回の今回はファイルダウンロードした後、ブラウザーモードが機能しない問題(BPEバージョン7.1)についてご紹介します。
どうぞよろしくお願いします。


これまでにご紹介した問題

第1回 ‐ アタッチできない
第2回 ‐ スパイされた要素が時々認識できなくなる
第3回 ‐ フィールドに値が入力されたものの、フィールドの入力イベント処理が実行されない
第4回 ‐ ブラウザー拡張機能が検知できない問題


1. 現象

ブラウザーアプリケーションから(名前を付けて保存のポップアップを表示するかどうかに関わらず)ファイルをダウンロードした後、ブラウザーモードで識別された全ての要素に対して、検知できないエラーが出てくることがあります。
また、この状態ではブラウザーモードで新しい要素を識別することができません。ブラウザーモード以外の識別モード(Win32モード、UIAモード等)は通常通りに動きます。
この現象はBlue Prismバージョン7.1のみで見られています。Blue Prismバージョン7.0以前はこの問題が起こりません。

2. 原因

ブラウザーアプリケーションからファイルをダウンロードした後、ブラウザー拡張機能とBlue Prismの接続が切れてしまいます。Blue Prismのプロダクトチームが詳細な原因を調査しています。修正バージョンはBlue Prism バージョン7.2及びBlue Prism Automation Agentバージョン2になる予定です。

3. 解決策

Blue Prismバージョン7.2にアップグレードできないお客様に対して、Blue Prismから公式に推奨された解決案はBlue Prism Automation Agentバージョン2をインストールし、使用することです。ただし、10月17日現在のところ、Blue Prism バージョン7.2もBlue Prism Automation Agentバージョン2もまだリリースされません。
お急ぎのお客様は下記の3つの解決案をお試しいただけます。

1. ページをリフレッシュする

ファイルをダウンロードした後、ブラウザー拡張機能の接続が切断された状態で、ページをリフレッシュすると、ブラウザー拡張機能が接続し直し、ブラウザーモードが再び稼働します。
ページのリフレッシュですが、下記の2つの方法で行えます:

  • UIAモードで識別されたブラウザーの「リフレッシュ」ボタンをクリックします。

UIAモードで識別されたブラウザーの「リフレッシュ」ボタンをクリック
  • 「F5」のグローバルキー送信を行います。

メリット:この解決案は簡単で、どんなブラウザーページでも実行できます。
デメリット:リフレッシュされると、作業を最初からやり直すことになってしまうブラウザーアプリケーションが多いため、適用できないケースも考えられます。

上記の理由で、この解決案はアプリケーション起動した直後等のリフレッシュしても業務に影響がない場合のみに適用できるかと思います。

2. ダウンロードURLを抽出し、Utility - HTTP VBOを利用して直接にダウンロードを行う

ブラウザのダウンロード機能を使うのではなく、その代わりに、HTTP VBOを用いる方式です。Utility - HTTP VBOはここからダウンロードできます。

メリット:Utility – HTTP VBOで直接にファイルをダウンロードしたため、開いているブラウザーページに影響を与えず、ブラウザー拡張機能の接続切断を回避できます。
デメリット:ダウンロードリンク(URL)が確認、抽出できない場合、この方式で実行することができません。そのため、この解決案が適用できるケースも限りがあります。

3. 「新しいタブで開く」機能を使用し、別のタブでダウンロードを行う方法

ダウンロードURLにマウスの右クリックで表示されるポップアップメニューの操作を行い、現れたサブメニューの中から「新しいタブで開く」を選択し、ダウンロードを行います。

メリット:作業を行っているブラウザーページ(タブ)上で直接ダウンロード操作を行わないため、ブラウザー拡張機能の接続の切断問題が回避できます。
デメリット:「新しいタブで開く」オプションを表示することができない場合、この方式で実行できません。そのため、この解決案が適用できるケースも限りがあります。

4. 他に見られるブラウザーモードが機能しない現象

ファイルダウンロードに関連がありませんが、同じ現象(ブラウザーモードが機能しませんが、他の識別モードが機能します)が見られるケースをもう一つご紹介します。

下記の組み合わせで、ブラウザー拡張機能が多く、開くブラウザーページが重い時、起動を実行した後、アプリケーションが接続されたのに、ブラウザーモードで識別された要素を検知したり、ブラウザーモードで新しい要素を識別したりできない場合もございます:

  • Blue Prism バージョン6.10.4とブラウザー拡張機能バージョン6.10.5

  • Blue Prism バージョン6.10.5とブラウザー拡張機能バージョン6.10.5

この現象の解決案ですが、下記の2つが考えられます:

  1. 起動直後に起こっているため、ページをリフレッシュしても業務に影響を及ぼさないと判断することができると思います。この為、上記③解決策の1で示した、ページをリフレッシュする方式での実装を推奨します。

  2. Blue Prism Automation Agentをインストールし、使用することでこの現象が起こらなくなります。Blue Prism Automation Agentはここでダウンロードできます。

本稿では、「ブラウザーアプリケーションからファイルダウンロードした後、ブラウザーモードが機能しない」エラーの原因及び解決案をご紹介しました。
このエラーはバージョン7.1.0及び7.1.1にしか起こっていません。上記の3つの解決案で解決できない場合、Blue Prismバージョン7.0以前のバージョンにロールバックすることも考えられます。次のバージョン7.1.2以降でこの問題が修正されることが期待されます。

これまでにご紹介したModern Browser Automationの問題:

第1回 ‐ アタッチできない
第2回 ‐ スパイされた要素が時々認識できなくなる
第3回 ‐ フィールドに値が入力されたものの、フィールドの入力イベント処理が実行されない
第4回 ‐ ブラウザー拡張機能が検知できない問題