Web上から必要なデータを取得することをスクレイピングといいます。
マーケティング情報・顧客情報など、Webページで公開されている情報を収集し、データを作成することで、ビジネスに利用しやすくなるため、定期的にスクレイピングを行っている企業も多いのではないでしょうか。
面倒なスクレイピングも、RPAツールを使えば自動で行うことができます。
時折「RPAツールによるスクレイピングは違法」と書かれているサイトを目にしますが、直ちにはそうは言えません。
しかし、何をすると違法になりうるかは知っておいた方がよいでしょう。この記事ではこうしたリスク管理についても解説します。
RPAツールによるスクレイピングの安全でフェアな利用とリスク管理のために、この記事がお役に立ちましたら幸いです。
株式会社MICHIRU 取締役 CTO
この記事の監修担当者:
斎藤 暁
医療施設法人やホンダ子会社のIT領域責任者などを経て独立。AI技術やシミュレータなど、複雑なアルゴリズムを駆使したシステムを提供している。自然言語処理によるシステムの技術は日米で特許を取得、その発明者でもある。2018年11月株式会社MICHIRUを創業。
RPAツールによるスクレイピングとは何だろう?
Webページからのデータ収集
Webスクレイピングとは、Webページ上の情報を抽出して収集、加工することをいいます。
似た用語として「Webクローリング」というものがありますが、こちらはWebを巡回して情報を受信するもので、データを切り取って収集するスクレイピングとは異なります。
データの切り取りをRPAで実行すると、いくつものWebページから同様の要素を取り出すことができます。
必要なデータを自動で取り出して加工できるため、スクレイピングの手段としてもRPAツールが注目されています。
APIからのデータ収集との違いは?
WebAPIを公開している企業の場合、APIで情報収集した方が早いのではないか?と思われる方もいらっしゃるでしょう。しかし、WebAPI情報は、すべてのWeb情報で公開されているわけではありません。
APIでは収拾できない企業のWebページデータも、RPAによるスクレイピングなら大量に集めることが可能です。
RPAツールならスクレイピングが楽に
UiPath、RPAExpress、WinActorなどの代表的な製品はもちろん、スクレイピングに特化したRPAツールもあります。スクレイピングはRPAができる代表的な自動化作業です。
スクレイピングでできること・できないこと
スクレイピングでできることは、Webページを中心としたブラウザデータを集めることです。
逆に、WebページがWebアプリで構成されている場合、そこに格納されているデータを集めることはできません。
RPAとWebページのそれぞれにできないことはあるものです。活用の限界があることに留意しておきましょう。
どんな業務に有効?
RPAスクレイピングによると、次のような目的で、データ収集業務を行うことができます。
- Webページから、広告データを集める
- Webページから、顧客企業に関する情報を収集する
- Webページから、商品に関する情報を収集する
- Webページから、自社の評判情報を集める 等々
RPAによるWebスクレイピングを行うと、大量の情報を自動で抽出してくれます。また、表中の数字データも抽出することができるのも特徴の一つです。
その結果、関連情報を確認する、要素を抽出して構造化するなど、RPAによるスクレイピングではデータの利用・加工も正確かつ立体的に行いやすくなります。
無限にあるWebページからより効率的にデータ収集を行うには、あらかじめスクレイピングの手順を決めておくことも必要ですが、基本的なRPAツールを使うと簡単に設定できます。
RPAツールを使ったWebスクレイピングの手順とは?
RPAツールによるWebスクレイピングの手順について、ここでは代表的なRPAツールであるUiPath Studioを例にとって、表データのWebスクレイピングの進め方をご紹介します。
実践!表のデータを取得してみよう
UiPath Studioには、データスクレイピング機能がついています。これを使って表からデータを抽出します。
なお、Excel形式の表の場合と、PDFの場合で手順・設定に違いはありません。Excel形式もPDFも双方この手順で行います。
- Webページの表示
データを取得したい表を表示させます。 - ウィザードから、「データスクレイピング」をクリック。
- 「要素を選択」から、表内の要素(普通は特定のセル)を選択し、クリックする
- 「表全体を選択しますか?」と聞かれるので「はい」をクリック
- 「データは複数ページにわたりますか?」と聞かれるので「はい」をクリック
- アクティビティ画面が表示されるので、CSVファイルに保存するを追加
- 書き出されたCSVファイルを保存する
これを繰り返すためにレコーディングを設定しておくと、入力したURLについては、すべて同様にスクレイピングを自動で行ってくれます。
どれくらいの速度でスクレイピングできるのか?
Pythonプログラミングによると、おおむね1分間で1000件のスクレイピングデータを収集することが標準的に可能になるとされており、Pythonで開発されたRPAツールも同様の速度があります。
RPAツールによるスクレイピングと人間の作業速度は比べ物にはなりませんが、さらに高速なRPAツールを導入すると、それ以上の成果も期待できます。
スクレイピング利用上の注意点とは?テストも重要!
RPAによるスクレイピングは公開データを利用できるため、非常に便利です。しかし、公開のデータであるからといって、自由にスクレイピングを行うわけにはいきません。
スクレイピングを行ううえでは、以下のような法律にかかわる注意点がいくつかあります。
とくに、RPAツールでスクレイピングを行う際には、大量のデータを処理できることから、下記のような注意点を無視してしまうと影響が大きいことに注意しておきましょう。
1.スクレイピングを明確に禁止しているWedサイトも
Webサイトによっては利用規約でスクレイピングを明確に禁止しています。こうした場合はAPI情報しか利用することができません。
スクレイピング禁止規定を持っている代表的な利用規約は多くのSNSののWebサイトです。Amazon、Yahoo!ファイナンスなども禁止しています。
利用規約に違反すると訴訟リスクがあり、厄介であるのと同時に、非常に高額の請求が行われる可能性もあります。
2.業務妨害罪で訴えられる可能性がある
スクレイピングは、業務妨害罪にあたる可能性があります。2010年に岡崎市立図書館のWebサイトにアクセスをし、データスクレイピングを行っていた男性が逮捕されました。
その後、不起訴になりましたが、Webサイトに負荷をかけてしまい、サイトの運営を妨害してしまっていたことが問題になりました。
そのため、RPAによるWebスクレイピングはテストドリブンで進め、問題がないことを確認してから、次のフェーズに進むといった方法を取る必要があります。
3.権利者の権利を確認・許可を取る
データに著作権・意匠権などの権利がある場合、権利者の権利を確認し、仕事に利用してよいかどうかを十分確認しましょう。どうしても、利用したい場合は、権利者が誰かを確認したうえで、データとして利用することの許可を取って使いましょう。
権利者の権利を無視して無断で使うと権利侵害となることがあります。
著作権法では、情報解析を目的とした記録または翻案に限って自由にできることとしていますが、これの目的を超えた使用をする場合は、データをサーバに保存した時点で著作権侵害・著作権法違反の可能性があります。
4.法令・会社の個人情報保護方針・情報管理規則を遵守
データの利用は、法令・会社の個人情報保護方針・情報管理規則を遵守して利用すること。個人情報の場合、個人情報保護法に従う必要があるほか、GDPR(データ保護に関する一般指令)もEU地域の居住者に関しては適用されます。
個人情報保護方針・情報管理規則等には、利用・保管・破棄それぞれ会社の認める方法で行うことが求められますので、内容を十分に理解してから、業務上の個人情報の利用を行いましょう。
さらに、もしも閲覧するWebサイトでID Passwordの入力を求められる場合には、アクセス先のサーバに対して、サーバ情報が丸見えになりかねないというセキュリティの懸念も指摘されます。
十分これらの注意点に関して、確認が取れてからRPAツールによるスクレイピングを進めましょう。
まとめ
以上に見た通り、RPAによるWebスクレイピングは非常に便利であるものの、注意点も多くあります。
上記の1~4をチェックリストのように考えていただき、上手にRPAツールによるスクレイピングを活用していただけますと幸いです。