元記事:https://www.octoparse.jp/blog/the-10-best-web-scraping-tools/
Webクローリング、またはWebデータ抽出とも呼ばれるWebスクレイピングは、単にWebサイトからデータを収集してローカルデータベースまたはスプレッドシートに保存するプロセスです。Webスクレイピングを初心者が聞いたら、遠ざけていく専門用語だと思われるかもしれないですが、実はあなたが思っている以上、実用しやすいものです。スクレイピングツールは、求人情報だけでなく、マーケティング、経済やeコマース、および数多くの他業界でも役割を果たしています。
Webスクレイピングツールはさまざまありますが、どれが一番なのかという疑問がある人はたくさんいるでしょう。ネットにあるほとんどのスクレイピングツールは極めて通用され、主に一般的で簡単なタスクを実行するように設計されているのです。つまり、期待しているほどカスタマイズ性や通用性に富んだものではないかもしれません。ご参考のために、この記事では人気のWebスクレイピングツールを10選まとめて、それぞれの特徴を紹介したいと思います。
#1. Octoparse
OctoparseはWebサイトから必要とするあらゆるデータを抽出するために使用される、豊富な機能を備えた強力で無料なWebスクレイピングツールです。コーディングせず、インターフェースで簡単なポイントアンドクリック操作をして、Webサイトからすべてのテキストを収集ことが可能です。取得したデータはExcel、HTML、CSV、またはご指定のデータベースのような構造化フォーマットに保存されます。そのほかに、仕組まれたRegexツールでWebサイトにある難しく加工されたデータブロックにでき、仕組まれたXpathツールでWeb要素を正確に見つけることができます。さらにIPブロッキングに悩まされることはもうありません。OctoparseはIPプロキシサーバーが仕組まれているので、積極的なWebサイトに検出されずにIPの自動ローテーションが可能になりました。最後にOctoparseの新しいバージョンはAmazon、TwitterやIndeedなど、さまざまなのWebサイトからデータを抽出するために、すぐに使えるタスクテンプレートを提供しています。
**メリット:**Octoparseは私が今まで出会った最高の無料データスクレイピングツールです。これから話す他のツールより、Octoparse無料版は取得ページ数の制限なしで最も強力な機能を提供しています。タスクテンプレートでは、パラメータ(ターゲットページURL、検索用のキーワードなど)を入力し、データ収集を待つことだけです。
**デメリット:**残念ながら、OctoparseはPDFからデータを収集することも画像を直接ダウンロードすることもできません。でも、画像のURLを抽出することができます。
#2. Mozenda
Mozendaは、データ抽出に役立つ機能を備えたクラウドWebスクレイピングサービス(SaaS)です。Mozendaのスクレイピングソフトウェアには、WebコンソールとAgent Builderの2つの部分があります。Mozenda WebコンソールはWebベースのアプリケーションで、エージェントの実行(プロジェクトのスクレイピング)、結果の表示と整理、および抽出したデータのDropbox、Amazon、Microsoft Azureなどのクラウドストレージへのエクスポートまたは公開することをサポートしています。Agent Builderは、データプロジェクトを構築するために使用されるWindowsアプリケーションです。データ抽出はMozendaデータセンター内の最適化されたハーベスティングサーバーでで処理されるため、Webリソースの読み込みからクライアントを解放したり、IPアドレスの禁止が検出された場合の脅威を軽減します。
**メリット:**MozendaはAJAXとiFramesのデータを簡単にキャプチャする包括的なAction Barを提供し、ドキュメントと画像の抽出もサポートしています。さらに、マルチスレッド抽出とスマートデータ集約に加えて、MozendaはIP禁止を防ぐためのGeolocation、バグを修正するためのテストモードとエラー処理を提供します。
**デメリット:**Mozendaは5000ページあたり99ドルで少し高いです。十分な論理機能を持てず、実行するためにWindows PCを必要とし、大型Webサイトを扱うとき安定性の問題も抱えています。
#3. 80legs
80legsは、カスタマイズされた要件に基づいて構成できる強力で柔軟なデータスクレイピングツールです。それは膨大な量のデータの取得と共に、抽出されたデータを即時にダウンロードするオプションをサポートしています。 80legsは、高速に機動し、わずか数秒で必要なデータを取得する高性能のWebクローリングを提供します。開発者は、クローリングネットを広げるために80legs APIを自分のアプリケーションに組み込むことができます。
**メリット:**80legsは、専用線アクセスを許可し、顧客がクローリングした分だけを支払うようにすることで、Webスクレイピングテクノロジを小規模企業や個人にとってより利用しやすくします。
**デメリット:**80legsは前に述べたほかのツールほどの適応性がありません。大量のデータを取得したい場合は、カスタマイズ取得するデータ、作成済みのAPI、およびクロールアプリケーションのいずれかを選択する必要があります。
#4. Import.Io
Import.Ioは、Webページ内の半構造化情報から構造化データへの変換に役たつWebスクレイピングプラットフォームです。これはビジネス上の意思決定の推進からアプリケーションや他のプラットフォームとの統合まで、あらゆる用途に使用できます。ストレージとテクノロジはすべてクラウドシステムに基づき、Webブラウザ拡張機能を追加するだけでツールを使用できます。シンプルで直感的なポイント&クリックの操作スタイルは、ページとデータフィールドを簡単に選択することができます。JSON RESTベースおよびストリーミングAPIを介したリアルタイムのデータ検索、多くの一般的なプログラミング言語およびデータ操作ツールとの統合を提供します。
**メリット:**Import.ioは、ほぼすべてのシステムをサポートする最先端のテクノロジを使用して、何百万ものデータが取得できます。洗練されたインターフェース、シンプルなダッシュボード、スクリーンキャプチャ、そしてユーザーフレンドリーな操作ガイドビデオのおかげで、さらに使いやすくしてくれます。
**デメリット:**無料プランはもう利用できません。各サブページにも費用がかかるので、多数のサブページからデータを抽出していると、コストがすぐに高まる恐れがあります。それに、Webサイトの構造に大きく依存するから、すべてのWebサイトでは動作するわけではありません。
#5. Content Grabber
Content Grabberは、Webからのコンテンツ抽出に使用される視覚的で強力なWebスクレイピングツールです。商品カタログや検索結果などの完全なコンテンツ構造を自動的に収集できます。それはユーザーにとって非常にフレンドリーでありながら、AJAX が使われたWebサイトを含む動的なWebサイトからデータを抽出するのに十分洗練されています。
Content Grabberは、高度なプログラミングスキルを持つ人々により適しています。強力なスクリプト編集、デバッグインターフェースを数多く提供しています。ユーザーはC#またはVB.NETを使用してスクリプトをデバッグまたは作成し、クローリングプロセスをプログラミングによって制御することができます。たとえば、Content GrabberをVisual Studio 2013と統合して、ユーザーの特定のニーズに合わせて、高度なカスタマイズクローラーに最も強力なスクリプト編集、デバッグ、および単体テストすることができます。
**メリット:**Content Grabberは、サードパーティ製ツールを使用している多くのユーザーにさらに多くのオプションを提供します。ユーザーはOctoparseやParsehubでサポートされていないスクリプトをデバッグすることができます。
**デメリット:**Content Grabberは無料版を提供しておらず、最低月額149ドルから始まります。旧バージョン機能はOctoparseの無料版で利用可能であることを考えると、かなりの高価です。その上、OctoparseやParsehubのように使いやすいものではなく、最初の扱いには少し理解しがたいかもしれません。
#6. Scraper
Scraperはオンライン調査を促進、データをすばやくGoogleスプレッドシートにエクスポートすることができるわずかなデータ抽出機能を備えたChromeの拡張機能です。Scraperは初心者だけでなく、OAuthを使用してデータをクリップボードにコピー、またはスプレッドシートに保存できる専門家を対象としています。Scraperはブラウザで機能し、対象URLを定義できるXPathを自動生成できる無料のWebクローラーツールです。包括的なクロールサービスは提供されないかもしれませんが、初心者には面倒な設定に取り組む必要はありません。
その仕組みは次のとおりです。特定のデータポイント、価格やランキングなどを選択して、ブラウザのメニューから[Scrape Similar]をクリックすると、データをExcelかGoogle Docsにエクスポートまたはコピーできます。このプラグインは基本的なものですが、素早く簡単にページをスクレイピングするために作られたものです。
**メリット:**Chromeの拡張機能として、簡単なスクレイピング作業だとScraperがすぐにできることは魅力です。
**デメリット:**Scraperはただの基本的なクローラーですから、簡単なWebページのみに、限られた抽出機能が持つ単純なクローリングプロジェクトを提供できます。
#7. Parsehub
ParseHubはインタラクティブマップ、カレンダー、検索、フォーラム、ネスト化されたコメント、無限スクロール、認証、ドロップダウン、フォーム、Javascript、Ajaxなどを簡単に処理できる視覚的なデータ抽出ツールです。ParsehubのデスクトップクライアントはWindows、Mac OS X、Linuxなどをサポートしています。ブラウザ内に組み込まれているWebアプリケーションを使用することもできます。ParseHubは無料プランのほか、大量のデータ抽出ためのカスタマイズ法人プランも提供しています。
**メリット:**ParseHubはOctoparseのように、様々なニーズに適応してオンラインデータを収集できます。その利点といえば、Octoparseより多くのデスクトップシステムをサポートするところです。
**デメリット:**だが、 ParsehubはAPIアクセス権限を持つプログラマーによりフレンドリーです。無料版には5つのプロジェクトと最大200ページまでの制限があります。Octoparseのように、それはドキュメンテーション抽出をサポートしていません。そして、アドバンスアプションを使う時に問題が出るからもしれないので、注意する必要があります。
#8. WebHarvy
WebHarvyは、軽くて視覚的なポイント&クリック式のWebスクレイピングツールです。各種類のWebサイトからテキスト、URL、および画像を抽出することが可能です。抽出されたデータは一般的なフォーマット(CSV、Txt、XML)とデータベース入力用のSQLに保存することができます。また、匿名でスクレイピングし、Webサーバーによるブロック防ぐためのプロキシサーバー/ VPNも提供します。
**メリット:**WebHarvyは使いやすく覚えやすく安定です。いくつかのエクスポートデータ形式に対応でき、すばやくWebスクレイピングすることに優れています。
**デメリット:**ドキュメントの抽出をサポートしていないほか、無料版も提供していません。
#9. Scrapinghub
Scrapinghubは、インターネットから構造化された情報を抽出するために、いくつかの便利なサービスを提供している開発者向けのWebスクレイピングプラットフォームです。ScrapinghubにはScrapy Cloud、Portia、Crawlera、Splashという4つの主要なツールがあります。Scrapy CloudはScrapy(オープンソースのデータ抽出フレームワーク)Webクローラーのアクティビティを自動化・視覚化することができます。Portiaは機能が制限されていて、非プログラマー向けのWebスクレイピングツールです。Crawleraは、50カ国以上のIPアドレスを持ち、IP禁止問題の解決策です。SplashはScrapinghubによって開発されたオープンソースのJavaScriptレンダリングサービスです。Splashブラウザを使うと、JSを使用しているWebページをより適切にスクレイピングすることができます。
**メリット:**Scrapinghubは、オープンソースフレームワークScrapyや視覚データスクレイピングツールPortiaなど、さまざまな地域の人々に合わせて適切なWebサービスを提供する強力なWebスクレイピングプラットフォームです。
**デメリット:**Scrapyはプログラマーに向け、Portiaも複雑なWebサイトを扱う場合では数多くのアドオンを追加する必要があるので、簡単に利用できません。
#10. Dexi.io
Dexi.Ioは、開発、ホスティング、およびスケジューリングサービスを提供するクラウドベースのWebスクレイピングツールです。なしでポイント&クリックのUIを備え、コーディングする必要がありません。簡単なタスクを作成するために、Extractor、Crawler、およびPipes、3種類のロボットがあります。取得したデータはJSON / CSVデータとして利用可能であり、またReSTを通して外部アプリケーションからアクセスすることもできます。このWebスイートは、CAPTCHA解決、プロキシソケット、ドロップダウンを含むフォームへの記入、正規表現のサポートなど、最新のWebスクレイピング機能のほとんどを提供しています。また、取得したコードのJavaScript評価もサポートしています。
**メリット:**ブラウザベースであるため、Dexi.io CAPTCHA解決はより便利なことです。それに、多くの第三者サービス(キャプチャソルバー、クラウドストレージなど)をサポートするから、それらをボットに簡単に統合できます。
**デメリット:**商用サービスとしてもちろん、無料版を提供していません。また、フローを理解するにはかなり複雑で、デバッグする場合もあるので面倒だと感じます。
いかがでしょうか?あなたのニーズに合わせて最適なスクレイピングツールを見つけましょう!