「RPA」はどうやってPCの作業を自動化する? 代表的な3つの方法RPAで始める業務自動化のススメ(3)(2/3 ページ)

» 2018年03月08日 08時00分 公開

 まず、スクリーン上に同じ画像が複数ある場合にはどれが正しいか分からなくなりますし、Microsoft Officeなどは、アプリケーションのテーマを変えただけで色やスキンが変わり、指定できなくなる可能性があります。

 Webアプリケーションの場合でも、Webデザイナーがバージョンアップなどのタイミングで、対象の画像を変えてしまえばもう捕捉できません。画像認識の精度を落とすようにチューニングすることで、多少の変化を許容できるよう調整することも可能ではありますが、正確さとのトレードオフになるため、あまり多用はできないでしょう。

対象のオブジェクトを「構造的」に検出する

 現時点で最もお勧めなのは、構造的に対象を検出する方法です。「構造的に検出する」というと分かりにくいかもしれません。少し乱暴ですが、スーパーのおつかいで例えると「どのコーナーにある」「どのメーカーの」「○○という名前の商品」といったような形で、複数の条件で絞り込んで指定する方法です。

 例えば、「お菓子コーナーにある、メーカーAの、商品Bを買ってきて」となれば、答えは1つに絞れるはずです。もし、画像認識のようなアプローチで、商品のパッケージや中身を見せただけでは、類似商品を買ってきてしまうかもしれません。座標のように「お店に入ったら右の棚の、手前から3列目の一番上にある商品だよ」と言われても、陳列が変わった時点でもうアウトです。

 つまり、構造的に指定できれば、たとえ陳列場所が変わろうが、似たような商品が並んでいようが、間違えることはないというわけです。実際の挙動に近いイメージで例えると、HTMLのような構造的に記述されたWeb画面(コード)において、「どのタイトルの」「テーブルの名前がAの」「属性がC」のような指定の仕方になります。

photo 対象のオブジェクトを「構造的」に検出する方法(筆者作成)

 指定したテーブルの名前と属性の内容さえ変わらなければ、Webページのどこにあろうが、一意に指定できます。もちろん、実際は重複などが起こり、指定ができずに動かないケースもあります。その場合は、よりうまく特定する方法がないかを探すのが、ロボット作成者の腕の見せ所になるでしょう。

 Webアプリケーションの場合は、WebデザイナーやWebアプリケーションの開発者が、デスクトップアプリケーションの場合は、アプリケーションの開発者が、構造上変わりそうにない要素を読み取って「識別子」として指定すると、Webサイトやアプリケーションの変化に強いロボットが作成できるのです。

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ