見出し画像

Modern Browser Automation 問題と解決策 - 第2回 スパイされた要素が時々認識できなくなる

Blue Prism公式noteアカウントをご覧いただき、誠にありがとうございます。プロフェショナルサービスのAkiです。

このシリーズはModern Browser Automation(Edge, Chrome, Firefoxの自動化)の「起こり得る」問題とそれぞれの解決策について連載します。
第1回は「アタッチができない」問題についてご説明しました。
第2回の今回は「スパイされた要素が時々認識できない」問題についてご紹介します。どうぞよろしくお願いします。

1. 現象

スパイされた要素(フィールド、ボタン等)が普段問題なく認識し、その要素に対してアクションを行うことができますが、時々認識されず、実行したいアクションが失敗することがあります。特に、あるアクションを繰り返すループではよく発生します。

2. 原因

automate.exeコンフィグレーションファイルのデフォルトに設定されたタイムアウトが短過ぎるため、ブラウザー拡張機能の応答を待つことが時々できなく、3秒過ぎたら自動的に要素が見つからないとの例外をスローします。

3. 解決策

Timeoutの値を上げること(例:60000)(単位は、ミリ秒です)
これは、各ランタイムリソース、インタラクティブクライアントで実施する必要があります。

実行方法は下記の通りです:

  1. Blue Prism Automateのフォルダーにアクセスします 
    (デフォルトはC:¥Program Files¥Blue Prism Limited¥Blue Prism Automateになります)

  2. Notepad等のテキストエディターでAutomate.exeコンフィグレーションファイルを開きます。

  3. BrowserAutomation.DefaultCommunicationTimeOut valueを上げます。デフォルト値は3000ミリ秒(3秒)になっています。最適な値はブラウザーの応答状況によって異なります。

  4. ブラウザーを再起動します

テキストエディタでAutomate.exe を表示した時の表示
value="3000" となっています

また、ブラウザーの要素がスパイできない時も、上記のautomate.exeコンフィグレーションファイルのデフォルトに設定されたタイムアウトが短過ぎることが一つの理由だと考えられます。

今回スパイされた要素が時々認識できなくなる問題をご紹介しました。
次回は「フィールドに値を入力されたものの、フィールドの入力イベント処理が実行されない」問題について紹介します。