Fippiyのプログラム学習内容アウトプットBlog

日々の学習内容をアウトプットして振り返りを実施する。

VBAプログラム開発、スクレイピング・データ要素を充実させる【1】詳細要素を確認する

書籍一覧取得+ページネーションURL取得を利用して書籍一覧情報をExcelワークシートへ取得できるようになりました。

しかし、取得できていたのは一覧表示画面に出力されていたデータのみです。

書籍一覧から書籍タイトルをクリックすると、詳細画面が表示されてより詳細な情報が表示される画面が用意されています。

本記事では、この詳細画面内にあるデータも取得して、Excelワークシート上に取得するデータをより充実したものにしていきます。

今回の目的

詳細ページのデータを確認し、どうやって取得するかを検討する

なぜやるか

取得するべきデータの内容と場所を確認し、取得手順を予め検討してからコード編集を実施するため

やりたいこと

  • 詳細ページを確認する
  • 詳細ページの情報が何かを確認する
  • 全書籍の詳細ページにアクセスする方法を検討する

やったこと

  • 今までに作成したデータ取得手順を確認する
  • 取得する詳細情報を確認する
  • 詳細情報を取得する手順を考える

実施内容

取得情報を確認する

現状の取得データを確認する

前回までの記事でWeb上の書籍情報一覧表示データを収集してExcelワークシートへ保存していました。

# Web一覧表示

f:id:Fippiy:20190613103326j:plain

書籍情報一覧表示

# Excelワークシート

f:id:Fippiy:20190615105002j:plain

一覧情報をExcelに収集

一覧表示されたデータをExcelに収集できています。

 

取得する情報を増やす

しかし、Web画面では一覧表示されたタイトルをクリックすると、さらに詳細な情報が表示されるページがあります。

 # 書籍詳細情報ページ

f:id:Fippiy:20190615144647j:plain

詳細ページ

取得済みの「タイトル名・詳細テキスト・画像」以外の情報もこちらにはあります。

今回はこの詳細ページにのみ表示される情報も取得して、Excelワークシートに保存できる情報を増やします。

 

詳細情報取得方法を検討する

詳細ページにのみ表示されていたページのデータは、詳細ページにアクセスするしか取得方法がありません。

そのため、考えられる方法としては、各書籍の詳細ページに順番にアクセスして情報を取得する必要が有ります。

一方で、書籍一覧にあったタイトル名や画像は詳細ページでも同じ情報があるので、詳細情報ページで一緒に取得すれば情報は取得できます。

 

そこで、取得方法をどうするかというと…。

まず書籍一覧ページにアクセス

f:id:Fippiy:20190613101833j:plain

書籍情報一覧

 ここでタイトル名等は取得しません。必要なのは詳細ページのURLだけです。これだけを集めます。

そして、ページネーションの次ページを探します。

f:id:Fippiy:20190613101954j:plain

一覧表示

2ページ目にアクセスした後は、再び詳細ページURLを収集します。

全ページのURLを収集するをまずはひたすら実施します。

 

全書籍のURLを取得完了したら、次に各ページにアクセスして詳細情報を取得します。

f:id:Fippiy:20190615144647j:plain

詳細ページ

タイトル名・画像・著者名…等々、全部取得してExcelワークシートで出力します。

これを取得した全URLに対して実施します。

 

この手順で実施すれば、より多くの情報を一度に収集できそうです。

 

次回からこの検討手順を元に、詳細情報までを網羅したデータ取得VBAを作成していきます。