差分抽出 - 更新されたデータを簡単に入手する
フォローするニュースポータルやフォーラムなどのWebサイトでは、動的Webページではないにしても、通常は新しいコンテンツをすばやく追加になります。このようなWebサイトを常に最新の情報を取るために、Octoparseの差分抽出(過去は「漸増抽出」と言われます)では、既に抽出したURLをスキップして、更新されたURLだけを取得します。いわゆる、抽出したことがないURLから更新されたデータだけをスプレイピングします。
差分抽出はどうやって新しいデータを識別しますか。
差分抽出は、現在のURLと履歴URLを比較し、履歴URLと同じURLの場合はスキップします。そうでない場合、データを抽出します。抽出プロセス中に、Octoparseは各URLをチェックして、それが以前にスプレイピングされたものかどうかを識別します。すでにスプレイピングされたURLは差分抽出で実行するプロセスで自動的にスキップされます。
差分抽出をいつ使用しますか?
以下の条件を満たす場合は、差分抽出をご利用してください。
(1)1つのWebサイトから必要なデータが頻繁に更新された場合。
(2)ページの内容が変更されたが、新しいURLで表示される場合(既存のWebページに新しい情報が追加または更新されるのではありません)。
CNN.comを例として説明します。CNN.comからリアルタイムでニュースフィードを取得する場合なら、サイトに追加されたものがタイムリーに抽出されるように、必要な頻度でタスク/クローラーをスケジュールして実行することが重要です。これは基準(1)に満たされます。
さらに、CNN.comの各ニュース記事には更新されたURLがある場合も、それらのURLが簡単に識別できます。これは基準(2)にも満たされています。
タスクを予め設定したとしましょう。前の実行で既に取得された記事をもう一度取得するのは意味ではありません。
差分抽出を使用すると、URLリストが抽出されていないかどうかを最初に確認し、新しいものしか取得されないようになっています。
どうやって差分抽出を設定しますか。
以下の手順に従い、簡単に差分抽出を設定できます。
1.最初はワークフローで「データ抽出」ステップを完成したことを確認してから、「設定」ボタンをクリックします。
2.「差分抽出」にチェックを入れます。
3.「URL全体を比較する」または「URLの一部を比較する(パラメーターを選択)」を指定します。
URL全体を比較する
このオプションを指定すると、OctoparseはURL全体を現在のものとマッチします。ごくわずかな違いでも、それは「新しい」URLとして識別されます。
URLの一部を比較する(パラメーターを選択)
URLのパラメータは、一般的にURL末尾に「?」を付けて、その直後に「パラメータ名=パラメータ値」といった形式で使用します。複数のパラメータを付ける場合は、「&」で区切り、サーバー側に送信したいデータをURLの末尾に付け足していきます。
例として、以下のURLには、 "page"および"r"の属性が含まれます。
差分抽出で実行すると、Octoparseは自動的に属性を検出し、パラメータとして利用できるようにします。マッチに使うパラメータとして1つまたはそれ以上の属性が選択される場合、それらの属性に基づいて現在のURLを比較し、同じ場合はスキップし、それ以外の場合はページをスクレイプします。
ヒント!
|