Pythonを利用したスクレイピングで、自動的にウェブ上にある文字、画像などを抽出することで、作業の効率化やマーケティング利用を行うことが話題になっています。一方で、著作権法と動産不法侵入に関わり逮捕された事件もあります。
今回は、ウェブスクレイピングの利用価値と利用方法を見ていきたいと思います。
1.ウェブスクレイピングとは
インターネット上には、様々な情報が溢れています。コンテンツで区切ると、文字、画像、音、映像です。これらの情報を収集し、整理していることで有名なのがgooglebotによるクローラーと呼ばれるものです。
クローラーは単に、提供された情報を収集・解析しているだけですが、スクレイピングは、scraping、要はスクラップとなり、新聞などの切り抜きでまとめる事を指しています。それのウェブ版だと思っていただければと思います。
新聞だけですと、情報が限られているので、スクレイピングは、
新聞を見る→必要だと思う→切る→貼る という行程になります。
一方でウェブスクレイピングは、
システムを設計・構築する→実行 となります。
システムの設計・構築さえできていれば、膨大な情報の海から条件に当てはまるものだけを自動化して作業を行うことが出来ます。
2.どんなことが出来る?
先ほど新聞のスクラップのお話をしましたが、新聞のスクラップを毎日やるのは大変です。一方で、ウェブの場合は、完全自動化できます。(そこに至るまでのプログラミングは一部大変である可能性はありますが・・・)
そのため、自動的にスクレイピングしている間に他の作業に移ることが出来ます。さらに、紙媒体との情報量とは比較にならないデータが公開されているのでデータの量も比較にならないほど集めることが出来ます。
それらを機械学習していったら・・・という事を考えると、活用方法は自然と見えてくると思います。
3.活用による利用価値を探る
では、本題の何が出来るか?です。
1)膨大な量の商品比較が出来る
これは自分で購入する場合に最適かもしれません。一見物件、今の購入方法だと写真を見て商品内容を見て価格を見て・・・見ているうちに10件以上のタブで埋め尽くされている、なんてこともあると思います。
そういったことを情報を抽出することで、一覧表のように見つつ、俯瞰的に確認しながら商品比較が可能になります。
2)どんなことが今トレンドかを分析できる
トレンドはブログなどの文字に現れてきます。特にツイッターの検索ボリュームがあがるなどでトレンドを見るのが有名ですが、ツイッターだけではなくウェブ上の文字を自動的に抽出することで、トレンドなどを更に見極めることが可能です。
3)競合の商品価格を抽出し、最適な値段設定を行う
最適な値段設定まで行うのは機械学習の領域まで入ってきますが、競合の商品価格をチェックすることで、例えば新商品の価格を幾らにするかなどを決定する補助的要素を果たしてくれます。
4.相手を考えた利用方法
業種業態によっても、利用方法は様々だと思いますが、ウェブスクレイピングには一つ大きな課題があります。
それは、法律に違反するのではないかという点です。無断で公開されたサイトを閲覧するのは、何ら問題がありませんが、プログラムによっては逐次データを取得するなどで、相手側のサーバーに負荷がかかり、悪意が無くてもサーバーダウンに陥ってしまうなどの影響があります。
その中で、私的使用かつ情報解析での利用目的の場合は、ウェブスクレイピングは問題ないと言われています。ただし、これも相手側に問題が生じないことが前提になってきます。
5.それでも人にしかできない事とは
自動的にデータを抽出し分析までしてくれると思うと、非常に楽で人の行う仕事をかなり減らすことが出来ます。購入者側が利用することを考えると、一番最適なものを判断できるツールとして使えもします。
ただし、販売者側(ビジネスの観点では)では、いかに分析しようとも、購入までつながるか否かは人がカギを握っていることは忘れてはいけません。膨大な商品を取り扱うウェブBtoC企業などでも、人の口コミによって購買率は左右されます。
また、時間と共にトレンド含めて変化を伴うので、いつも同じアルゴリズムが最適だとは言えないと思われます。
すべてはヒトの感情や欲から発せられたものが、振り返ったら、価格や販売数として数値化されているといえます。分析から実行に移すことを肝に銘じて、効率化できる、あくまでツールとして考えていけると良いでしょう。