競走馬の情報を抽出してエクセルに記入するツール

Webスクレイピング
とっと
とっと

 今回はご依頼をいただき、競走馬の過去の成績を自動で抽出するツールを制作しました。

データの抽出/貼り付け作業にかかる時間を短縮させることができます。

とっと
とっと

 このツール制作で学んだプログラミング知識がこちら!

  • エクセルVBAでのWebスクレイピング方法

ご要望

依頼者様
依頼者様

 とあるサイトの競走馬情報を、ボタン操作でエクセルシートへコピペをしてくれるVBAを組んでいただきたいです。なお、ペースト先のエクセルシートには、取得したデータを個人的に分析するためのエクセル関数を既に組み込んでおります。

とっと
とっと

 承知しました!既にエクセルシート上で計算式を組み込んでおられるということで、PythonではなくエクセルVBAでのWebスクレイピングが望ましいですね。

仕様検討

依頼者様からご要望を伺い、ツールに関する仕様は以下のようになりました。

  • 競走馬の情報サイトは履歴ごとに複数あるため、URLを指定できるようにする。
  • 情報サイトから取得したデータは、エクセルの決まったセル範囲に貼り付ける。
  • データ取得ボタンを設け、データ取得プログラム(VBAで構築したマクロ)を実行する。
  • データ取得開始時に、前回のデータ貼り付け結果とURL欄はクリアする。
  • データ取得中、Chromeブラウザの表示は必要ない。

ここがすごい
  • これまで手動でサイトから大量のデータをコピー&ペーストしていた作業が、ボタンクリック一つでできるようになります。

制作したツール

ファイル構成

 ファイル構成は以下の通りです。

LNファイル名説明
1xxx.xlsmツール本体です。
依頼主様にてもともと用意されていたエクセル関数付きシートに、
データ取得用コードを追加したものになります。

エクセルVBAにてWebスクレイピングを実行するためには、予めWindows上で環境設定をしておく必要があります。

起動画面

 ツールを起動すると、このようなメイン画面が開きます。

非常にシンプルで、以下の構成となっています。

  • データ取得元のサイトURLの入力欄
  • データ取得実行ボタン
  • 取得したデータの貼り付けエリア
  • データ解析エリア

左側のデータ解析エリアには、既に依頼主様にてデータ解析のための計算式が組み込まれています。

データ取得の実行

 データ取得元となるサイトのURLを入力してデータ取得ボタンを押すと、必要な競走馬情報を取得し、データ貼り付けエリアに貼り付けます。

 データが貼り付けられると、予め組み込まれている計算式にもとづき、左側のデータ解析エリアに解析結果が出力されます。

まとめ

 エクセルVBAでのWebスクレイピングにより、競走馬情報をエクセルに取得するツールを制作しました。

 データ解析では、インプットするデータの下準備(取得、整理)が必要となり、この作業にかかる時間が無視できません。今回はその部分を自動化によって短縮したことで、すこしでも解析検討のほうに注力いただけるようになりました!

 ご参考までに、今回ご依頼者様からのお問い合わせをいただいてから、納品するまでのタイムフローを実績でまとめてみます!

今回のお取引き実績
  • 3/31
    お問合せ!

    30通のほどのメッセージのやりとりで、ご要望の確認をさせていただきました。

  • 4/1
    素案制作

    ご要望をもとに素案を制作しました。

  • 4/2
    打合せ

    実際にお会いして素案をご確認いただき、仕様を具体化しました。打ち合わせ後、具体化した内容を取り込み、ツールを作りこみ。

  • 4/3
    納品&お振込み

    完成させたツールを納品し、納品物をご確認いただきました。その後、お振込みいただき、無事お取引き完了です。

ご要望の内容によって素案や試作品の製作にかかる時間は変わります。またお打合せについてはZoom等での対応も可能です!

とっと
とっと

以上になります!

コメント

タイトルとURLをコピーしました