「ウェブ・スクレイピング」の版間の差分
ナビゲーションに移動
検索に移動
(→概要) |
(→.NET) |
||
27行目: | 27行目: | ||
*:かなり精度は高い。手軽。並列処理にも強い。 | *:かなり精度は高い。手軽。並列処理にも強い。 | ||
*[[GeckoFX]] | *[[GeckoFX]] | ||
− | *:[[Firefox]]そのもの。[[HTML5]]かつほぼ[[JavaScript]]だけで描画を行っているページですら完璧にぶっこ抜くことが出来てしまう。 | + | *:[[Firefox]]そのもの。[[iOS]]や[[Android]]のアプリ開発で頻出する[[WebView]]に類似するもので、[[HTML5]]かつほぼ[[JavaScript]]だけで描画を行っているページですら完璧にぶっこ抜くことが出来てしまう。 |
==関連項目== | ==関連項目== |
2015年3月4日 (水) 04:14時点における版
ウェブ・スクレイピング(英語:web scraping)とは、ウェブ上のHTMLなどから機械的にデータを抜き出すことを言う。単にスクレイピングと呼ばれることも多い。
概要
ウェブスクレイピングとは、日本語に直訳すると「ウェブ削り」であり、ウェブクローラーなどで取得したHTMLなどのデータから余計な部分を削ぎ落とし、目的とする部分を抜き出すソフトウェア、およびそのような行為のことである。
基本的には以下のような手順となる。
- ウェブクローラーで丸ごと保存
- ウェブスクレイパーでガリガリ解析
実際にはウェブクローラーが取得した大量のデータ(いわゆるビッグデータ)からデータマイニングを行うプログラム的な意味合いが強いが、ウェブ魚拓的な用途を除けば加工せずに扱うこと自体が非常に稀であるため、ウェブクローラーと区別するのが面倒なのでクローラーの一部として扱われることが多い。
また、AJAXの普及などに伴い本来はHTML上のJavaScriptで取得している非公式のウェブAPIを直接的に叩き、データを抜き取るような手法も確認されている。
手法
プログラミング言語でやる場合にもっとも手軽なのは正規表現でぶっこ抜くという手法である。 これは極端に言えば古くからUNIXのsedコマンドなどで行われていたデータ加工となんら変わらない。
主なライブラリ
PHP
- Simple HTML DOM Parser
- 重い
- Goutte
- 軽い
Ruby
.NET
- Html Agility Pack
- かなり精度は高い。手軽。並列処理にも強い。
- GeckoFX