今回は、WinActor Ver.7.4.0の新機能である「新たなブラウザ拡張機能」についてお話したいと思います。
この機能のおかげで、ブラウザ操作のシナリオを作るとき、できることや選択肢の幅が広がりますので、ぜひ参考にしてみてください。
今回は2部構成です。
本稿ではまず、これまでのブラウザ操作と新機能の概要についてご紹介、第2部では新機能を使うための事前設定や押さえておくべきポイントをご紹介します。
▼第2部はこちら
💡 ブラウザとは
ここでいう「ブラウザ」はGoogle Chrome(以下Chrome)、Microsoft Edge(Edge)、Firefoxのことを指します。Internet Explorerは含まれません。
1.これまでのブラウザ操作方法
従来、WinActorでのブラウザ画面操作は「ライブラリ -> 23_ブラウザ関連」のノードを使って操作するか、画像マッチングやエミュレーションなどのノードを使って操作する方法がありました。
1)「23_ブラウザ関連」のノードで操作する
「23_ブラウザ関連」のノードは「Webdriver」というツールを使います。Xpathを指定することで、その箇所をクリックしたり値を取得するなどの操作を行うことができます。ノードの種類も豊富に用意されており、複雑な操作もしやすくなっていますが、注意事項が2点あります。
<>1点目は、PCに保存しているWebdriverのバージョンとブラウザのバージョンを合わせておく必要があることです。
WinActorのVer.7.3.0からはWebdriverの自動更新機能が搭載されており、以前よりは簡易に更新ができるようにはなりましたが、初回は手動でインストールする必要がありますし、インストール後もブラウザのバージョンが上がったタイミングでWebdriverもバージョンアップできるよう、自動更新設定をしておかないとシナリオが止まってしまう、というリスクを含んでいます。
2点目は「23_ブラウザ関連」のノードは「ブラウザ起動」で起動したブラウザしか操作できないということです。
例えば手動で起動したブラウザや、「コマンド実行」などで起動したブラウザに対しては、使うことができません。
また、Webdriverを使って起動すると、Webサイトのログイン状態やブックマークの情報などを保持できません。
ログインが必要なWebサイトの場合、「次回からPWを自動入力する」にチェックを入れておいたとしても、その情報を保持できないため、毎回入力をし直す必要があります。
特に二段階認証システムになっているようなWebサイトに対して、WinActorで操作しづらい面があったのです。
手動でブラウザを起動したとき
「23_ブラウザ関連」の「ブラウザ起動」で起動したとき
⭐ 二段階認証のハードル
Webサイトへのログインにおいて、一度目は決まったPWを入力し、二度目の認証キーはWinActorが確認できない宛先(担当者の携帯端末のSMSなど)に届くような仕様になっている場合、下記のように途中で人の手を入れることになり、少し手間がかかります。
①ブラウザ起動 ⇒ WinActor
②WebサイトへログインID・PW入力 ⇒ WinActor
③携帯端末に届いた認証キーを入力 ⇒ 手動
④ログイン完了
2)画像マッチングやエミュレーションを使って操作する
手動で起動済みのブラウザやログイン情報を保持したままのブラウザ操作をしたいと思ったら、画像マッチングやエミュレーションといった「23_ブラウザ関連」以外のノードを使う方法もあります。
コマンド実行とエミュレーションを使ってWebサイトを起動
「ブラウザ起動」を使うときに比べてノードの数も多い
しかし、画像マッチングやエミュレーションではできることが限られてしまいます。ボタンのクリックくらいなら支障はありませんが、複雑な操作を行いたい場合は考えものです。
例えば表形式になっているデータの行数を取得してその数だけ値取得を繰り返したい場合、行数取得を画像マッチングやエミュレーションで行うのは難しそうです。
行数が固定であれば問題ないですが、毎回違うことも多いですよね。何とか作ることができても、精度の問題が残る可能性もあります。
そんな悩ましい状態も、新たなブラウザ拡張機能の登場によって解消できるようになりました。
では、次からその「新たなブラウザ拡張機能」についてお話していきます。
2.新たなブラウザ拡張機能
新たな拡張機能を使った操作では、Webdriverの使用を選択できるようになりました!
事前設定や一定の制約・条件はありますが、その点については次回詳しくお伝えします。
新たなブラウザ拡張機能の特徴は、何といっても起動済みのブラウザに対する操作が可能になったという点です。
起動済みのブラウザ操作ができるということは、「コマンド実行」等の「23_ブラウザ関連 -> ブラウザ起動」以外のノードで起動させたブラウザも操作ができる、ということです。
前項でお伝えした問題についても、解消(もしくは改善)が見込めるようになりました。
・Webdriverのバージョンをブラウザのバージョンに合わせておく
⇒Webdriverを使用しないため、気にしなくてOKです
・「23_ブラウザ関連 -> ブラウザ起動」ライブラリで起動したブラウザしか操作できない
⇒手動で起動済みのブラウザや、「ブラウザ起動」以外の方法で起動したブラウザも操作できます。
・ログイン時の認証情報を保持できたないため、都度全認証工程が必要
⇒認証情報を保持したままブラウザ起動や操作ができるため、「次回からPWを自動入力する」といった設定をしておくことで、ログイン工程を簡略化できる場合があります。
・画像マッチングやエミュレーションの場合、複雑な操作ができない
⇒「23_ブラウザ関連」を使うこともできますので、複雑な操作の実行もできる可能性が高くなります。
3.終わりに
実際に私の担当したお客様先にて、WinActorのバージョンアップをして新機能を手に入れたことで、これまで自動化をためらっていた業務を作成することができました。
あるWebサイトからデータをダウンロードする、という業務でしたが、ダウンロード対象のデータ判定にどうしても「23_ブラウザ関連」のノードを使いたい操作でした。
表形式のデータの中から該当のものをクリックする操作でしたが、クリック箇所の文言が毎回異なり、表示される行も固定ではないため、画像マッチングやエミュレーションが使用できませんでした。
このような場合は「23_ブラウザ関連」を使いたいところですが、そのWebサイトはログイン時に二段階認証が必要で、二度目の認証キーは事前に登録してある携帯端末のSMSに届く仕組みになっていたのです。
WinActorのインストールPCはご担当者の席から遠く、都度認証キーを入力しにいくのはとても手間なので、WinActorのVer.7.4.0リリース前はなかなかシナリオ作成を進められませんでした。
どうしようかと悩んでいたところ、WinActorのバージョンップで「新たなブラウザ拡張機能」を使うことができるようになり、二段階認証を回避しつつ「23_ブラウザ関連」ノードを使えるようになり、シナリオを無事作成することができました。
ご担当者様に毎回認証キー入力をお願いすれば、これまでもシナリオの作成は可能な内容ではありました。
しかし、手動でやっていたときには発生していない「認証キーを都度入力する」という手間が増えてしまうことになり、回避したかったのです。
もちろん「新たなブラウザ拡張機能」にも、使うにあたって注意事項や制約があります。
しかしWebdriverを使う方法か、「新たなブラウザ拡張機能」を使う方法か、選択肢が増えるだけでも開発の幅が広がったと言えるのではないでしょうか。
次回は「新たな拡張機能」を使うにあたっての事前設定や、注意事項についてお伝えしたいと思います。
▼事前設定や注意事項について
お読みいただきありがとうございました。
また次回お楽しみに!