2
5

More than 1 year has passed since last update.

Chromeの拡張機能でノンコードWebスクレイピング

Posted at

Webスクレイピングをノンコードで行うことが出来る便利な拡張機能を見つけた。コードを書くことなく、GUI操作でスクレイピングが出来るので、記事にまとめて共有したいと思う。

使用するプラグイン

Data Miner をChromの拡張機能に追加する

実践

スクレイピングするサイト:草加市プレミアム商品券特設サイト
取扱事業者一覧をスクレイプする。

ステップ1

スクレイプしたいページを開き、拡張機能ボタンをクリック。
image.png

ステップ2

「make your own recipe」をクリック
2.jpg

ステップ3

Recipe Creator ウィンドウが自動で開くので、「2 Type」タブへ移動。今回はリストタイプなので、上の「List / Searh Page」を選択。
3.jpg

ステップ4

「4 Rows」タブに移動し、「Easy Row Finder」をクリック
5.jpg

ステップ5

小ウィンドウが開くので、指示通り、スクレイプするひとブロックにカーソルを当て、1キー を押下。
6.jpg

下記は、カーソルを当てたところ。スクレイプしたいブロック全体がオレンジ色になっている。
7.jpg

下記は、1キー を押下した後。赤の点線で囲まれる。
8.jpg

次に、2つ目にスクレイプされるべきブロックにカーソルを当て、同様に、2キー を押下。

ステップ6

「5 Col」タブでは、スクレイプする具体的な値を指定する。
項目名を任意で「name」とした。Typeは、値をスクレイプしたいので、デフォルトの「Scrape a value...」のまま、「Easy Column Finder」を押下。
12.jpg

インストラクション通りに、スクレイプしたい値の上にカーソルを当て、Cキー を押下。
14.jpg

うまくいっていれば、下記のように抽出された結果が表示される。欲しかった値であることを確認。
15.jpg

引き続きコラムを追加して、スクレイプしたい値を抽出する。スクレイプしたい値が複数見つかった場合は、下記のように候補が表示されるので、欲しい値を選択する。
17.jpg

4コラムを取得することにした。「5 Cols」を終了後は下記のようになった。
18.jpg

ステップ7

「6 Nav」タブに移動する。
ここでは、ページを移動するための情報を指定する。
今回スクレイぷするサイトは、「Easy Nav Finder」ではうまくいかないため、「Advanced Settings」に進む。
23.jpg

ウェブサイトの「次へ」だけを選択したいのだが、CSSクラス、HTMLタグを使っても、うまくいかない。
25.jpg
結局、下記の方法にて、目的の「次へ」だけを指定することが出来た。「次へ」という文字を直接探す方法だ。「a:contains(指定したい文字)」
38.jpg

ステップ8

「8 Save」タブに移動し、作成したレシピに任意の名前をつけ、「Save」を押下し保存。
28.jpg

ステップ9 レシピを実行する

スクレイプしたいページを開き、拡張機能ボタンをクリック。
現在開いているページを1ページ目として、スクレイプを行うことになる。
「My Recipes」タブに移動し、先ほど作ったレシピで「▶️」をクリック
Untitled 42.jpg

Data Minerウィンドウが開いたら、今回は1ページだけでなく、次のページへと続けてスクレイプしたいので「Next Page Automation」を選択。何ページスクレイプしたいのか、次のページに移動するまでに何秒待つか、を指定する。また、画面下部のプレビューで、欲しいデータが取れているか確認し、まずは、数ページだけスクレイプし、結果が望ましいものになっているか確認することをお勧めする。
image.png

以上で完了。
画面下部にスクレイプした結果が表示される。CSVもしくはエクセルにてローカルにダウンロードすることも可能。

まとめ

簡単にコードを書く必要なくスクレイプ出来る非常に便利なツールを見つけ大満足。無料プランだと 1ヶ月に50,000行まで無料で利用出来るようだ。
今回スクレイプしたデータも、先日Googleサイトで作成したWeb
サイトコスパ101にアップロードした。

2
5
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
5