新型コロナウイルスによるテレワーク推進の中で、業務フローを見直す動きが進んでいます。その中で、日々の業務の自動化を行うことができるRPAは以前よりも増して注目が集まっています。最近では自治体の定額給付金業務をRPAを使って自動化したというニュースもよく目にします。

RPAとは?RPAの業務自動化で実現する働き方改革
今すべての企業で、働き方改革が求められています。日本の生産性は、他の先進諸国と比較するとかなり低いと言われており、かつては世界一であったGDPも…

でも、実際にどのようなやり方でどういった業務を自動化できるのかについては、あまり解説されていません。そこで今回は、弊社の業務を例にとって解説したいと思います。

弊社では業務の一つとしてWeb広告設計・運用を行なっているのですが、その際に検索キーワードに対してどのような広告が既に出稿されているかを調査します。既に出されている広告・広告文・設定等から競合分析を行い、それらを踏まえた広告の提案を行う必要があるためです。

今まででしたら候補の検索キーワードに対して手作業でそれぞれ分析していましたが、キーワードが多くなるにつれて作業が膨大になってきます。加えて、この検索→まとめという作業は単純作業であり、業務的に難しくありません。

そこで今回は、WinActorを用いて「複数のキーワードで広告を検索し、そこで表示される広告タイトル・広告説明文・広告表示URLを自動で取得する」シナリオを作ってみたいと思います。

シナリオ開発のプロセス

今回のシナリオを開発するにあたって、必要なプロセスを以下にまとめました。このシナリオは社内で1人~数人での使用を想定しているため要件定義等は行いませんでしたが、部署をまたいだり、規模が大きい場合のシナリオ開発では事前に要件定義を行い、必要な機能をあらかじめ洗い出すことをお勧めします。(詳しくはRPA導入した企業の役に立つRPA利用ガイドラインをご活用ください)

  1. IEでGoogle検索
  2. クラス名を調べ、IE操作(Debug class名指定 情報出力)でエクセルに出力
  3. エクセル加工
  4. キーワード分繰り返す

基本的な考え方として、何か繰り返したい作業があったら、まず一つの作業が完了するようシナリオを作り、エラー等がないかチェックします。次に、一連の作業を「繰り返し」の中に入れたあと、繰り返しの条件や変数の設定、カウントアップなどを設定します。小さなゴールをいくつも設定することで、挫折せずシナリオを作ることができます。

それでは実際に個々のプロセスについて見ていきましょう。変数については以下の通りです。(今回、「広告数」の変数は使用しませんでした)

実際のシナリオ解説

①キーワードをIEで検索

最初に、以下のようなキーワードリストをシナリオと同じ場所に用意します。

全体をエラー取集に入れた後、IEでGoogleを起動します(1)。その後、検索キーワードが書かれたエクセルファイルを開きます(2)。エクセルファイルは開くのに時間がかかる場合があるのでウィンドウ状態待機を使って開くのを待ちます。

次に、エクセルファイルの中にある検索キーワードを取得します(3)。このライブラリはNTTアドバンスドテクノロジ株式会社が提供しているプチライブラリで、数値でセルを指定して値を取得できます。通常で含まれている「エクセル操作(値の取得2)」ですと、行と列に直接数値だけで指定はできず、変数値設定などでAやRを付け加える必要がありますが、このプチライブラリはそのその後、取得した検索キーワードを用いてグーグルで検索します。こちらは自動記録で記録した後、それぞれ変数等を設定します(4)。クリック等の調整が必要な場合があります。(繰り返しについては後程解説します)

②クラス名を調べ、IE操作(Debug class名指定 情報出力)でエクセルに出力

Google Chromeの検証機能を使って、該当する情報のクラス名を調べます。すると、広告タイトルは「sA5rQ」、広告説明文は「ads-creative」、広告表示URLは「UdQCqe evvN5c」と分かりました。それぞれ変数に入れて、クラスごとに「IE操作(Debug class名指定 情報出力)」を用いて情報を出力したのち(5)、不要な部分を削除します(6)。

最初は「IE操作(指定CLASS内のテキストを取得)」を用いて一つずつ取得し、個数分繰り返そうと思ったのですが、思ったより時間がかかるので一度情報をすべて出してから不要な部分を削除する方が素早く取得できました。

広告説明文、広告表示URLについても同様にエクセルで出力します。その後必要な情報をコピーして、最初に作られたエクセルファイルにまとめます。それぞれ出力したエクセルは保存せず閉じてエクセルファイルを削除します。(7)

③エクセル加工

コピーした情報のヘッダーを日本語に整えた後(8)、検索キーワードが書かれているエクセルファイルにシートごとコピーします(9)。その後、ファイルを削除します。

④キーワード分繰り返す

変数「行」をカウントアップして(10)、エクセルファイルに書かれているキーワード分繰り返します。キーワードが空白になったら繰り返しを修了します。その後、IEを閉じて終了します。

実際の動作風景

実際に動作している様子は以下になります。

シナリオ制作の所要時間と効果

いままで1キーワードあたり数分かかっていましたが、シナリオ設計後は数秒で完了しました。キーワードが増えれば増えるほどシナリオ制作の恩恵にあずかることができます。

上記のシナリオはそこまで複雑な動作をしていないため、だいたい数時間ほどで制作できました。制作にそこまで時間をかけずに使っていくうちに改良していく方針でしたので、個々の名前変更やサブルーチンでまとめるといった保守性を意識した取り組みは後回しにしておりますが、非常にコスパの良いシナリオだったと思います。

今後はキーワード候補提案を自動化したり、広告の表示先LPの画面キャプチャの自動化といったシナリオ制作の方向性が考えられます。いずれにせよ、達成したいゴールに対して機能をひとつひとつ実装していって、徐々にRPAに代替していくプロセスがRPAのシナリオ制作におけるひとつの考え方になります。

まとめ~業務自動化はシナリオ作りをコツコツと~

いかがだったでしょうか。今回はウェブ広告業務の一部の自動化を試みました。RPAの特徴の一つに「単純作業の繰り返しに強い」がありますが、日常の業務を振り返ってみるとこのような単純作業は意外に多くあるのではないかなと思っています。とはいえ、今までの業務の自動化をいきなり全て行うのはあまり得策ではありません。シナリオ作成に時間がかかる一方で、業務そのものが変わるケースも多くあります。そのため、今回のように「今後も変わらなそう」かつ「単純作業」な業務から徐々にシナリオ作成していくのがおすすめです。

WinActorをはじめとするRPA製品はノンプログラマーでも比較的簡単に業務を自動化できるところに強みにあります。ですので、このような形で徐々にシナリオを作成しつつ、変化する業務や規模に対しては都度対応していくことで、業務自動化を目指していくのがひとつのあり方となります。また、WinActorはソフトウェアやサービスを横断して自動化することが可能ですので、特にデジタル領域における業務自動化に力を発揮します。

株式会社ベンチャーネットでは、御社のデジタル領域の業務を自動化するサービスを行っております。詳しくは以下よりご覧ください。お読みいただきありがとうございました。