JP5063729B2 - クローラ管理システム及び方法 - Google Patents

クローラ管理システム及び方法 Download PDF

Info

Publication number
JP5063729B2
JP5063729B2 JP2010083826A JP2010083826A JP5063729B2 JP 5063729 B2 JP5063729 B2 JP 5063729B2 JP 2010083826 A JP2010083826 A JP 2010083826A JP 2010083826 A JP2010083826 A JP 2010083826A JP 5063729 B2 JP5063729 B2 JP 5063729B2
Authority
JP
Japan
Prior art keywords
crawl
url
priority
storage unit
crawler
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2010083826A
Other languages
English (en)
Other versions
JP2011215912A (ja
Inventor
学 肥後
亮輔 薄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yahoo Japan Corp
Original Assignee
Yahoo Japan Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yahoo Japan Corp filed Critical Yahoo Japan Corp
Priority to JP2010083826A priority Critical patent/JP5063729B2/ja
Publication of JP2011215912A publication Critical patent/JP2011215912A/ja
Application granted granted Critical
Publication of JP5063729B2 publication Critical patent/JP5063729B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Description

本発明は、クローラ管理システム及び方法に関する。特に、特定のURLのWebページのデータを優先的に取得するクローラ管理システム及び方法に関する。
Web上で提供される検索サービスでは、検索エンジンの一部を構成するクローラがインターネット上の各Webサイトを巡回し、クローラが取得したWebページの情報に基づいて、インデクサが検索の際のキーとなる特徴語等をインデックス化してデータベースに蓄積することが行われている。検索エンジンは、検索要求を受け付けると、そのデータベースを検索して検索結果を検索要求をした端末に送信する。
ところで、検索エンジンが最新の情報に基づく検索結果を返すためには、データベースに蓄積された情報は、常に最新の情報であることが好ましい。しかし、インターネット上で公開されているWebページの数は膨大であり、クローラが収集する頻度にも限界がある。さらに、その更新頻度に対応するためにWebサイトに頻繁にクローラが接続すると、当該Webサイトのサーバに負荷がかかり、クローラによる接続がサーバの正常動作を妨げることもある。そこで、Webページの更新頻度に応じた再接続のスケジューリングを行う方法が開示されている(例えば、特許文献1)。特許文献1に記載の方法は、Webページの更新の有無を検知して、更新間隔からクローラがWebページに次回アクセスすべき時刻を予想し、さらに予想した時刻と前回のアクセス時刻との差分からサーバへの負荷指標を計算し、接続間隔を設定する。
特開2008−186157号公報
このような状況において、毎日又は毎時のように頻繁に更新が行われる特定のWebページが存在する。さらに、このようなWebページは、ユーザから頻繁に閲覧される可能性も高く、このようなWebページの内容を遅滞なく確実にインデックスに反映することは特に重要である。しかしながら、特許文献1に記載の方法では、接続間隔を設定するために特別なクローラを準備する必要がある。このことは、付加的なシステムリソースを要求することになるだけではなく、管理上も煩雑となるので好ましくない。
そこで、本発明は、クローラのプログラム自体の改変を行わずに、更新頻度の高い特定のWebページに対応して情報を取得できるクローラ管理システム及び方法を提供することを目的とする。
(1)通信ネットワーク上に公開されたWebサーバを巡回してWebページのデータを取得するクロール装置と、前記クロール装置のクロール先を指定するクロール先管理装置と、を備えるクローラ管理システムであって、前記クロール装置は、前記クロール先を示すURLをキューとして記憶する複数のキュー記憶手段と、前記複数のキュー記憶手段が記憶したURLを読み込んで対応するWebページのデータを取得する複数のクローラと、を備え、前記クロール先管理装置は、前記複数のキュー記憶手段のうち一部のキュー記憶手段に、前記複数のクローラを優先してクロールさせる特定のURLを記憶させる優先クロール先指定手段と、を備え、前記クローラは、前記優先クロール先指定手段が前記特定のURLを前記一部のキュー記憶手段に記憶させたことに応じて、当該記憶させた前記特定のURLを、それ以外の前記キュー記憶手段が記憶するURLに優先して読み込むクローラ管理システム。
(1)に記載の発明に係るクローラ管理システムは、複数のクローラが複数のキュー記憶手段に記憶されたURL(Uniform Resource Locator)を読み出して当該URLに対応するWebページのデータを取得する。このとき、複数のクローラに優先的にクロールさせる特定のURLが、複数のキュー記憶手段のうち一部のキュー記憶手段に記憶された場合、クローラ管理システムは、それ以外のキュー記憶手段が記憶するURLに優先して、当該一部のキュー記憶手段から特定のURLを複数のクローラに読み込ませる。
これにより、クローラ管理システムは、当該一部のキュー記憶手段から読み込んだ特定のURLに基づいて、当該特定のURLに対応するWebページのデータを取得することができる。したがって、クローラ管理システムは、クローラのプログラム自体を改変することなく、更新頻度の高い特定のWebページに対応して情報を取得できる。
(2)前記クロール先管理装置は、定期的に所定のWebサイトにおける所定のWebページのデータを取得して記憶し、前回取得した前記所定のWebページのデータと比較することにより、変更があったと判断した場合に、前記所定のWebページのURLを、優先クロール先URL記憶手段に記憶させる優先クロール先URL収集手段をさらに備え、前記優先クロール先指定手段は、前記優先クロール先URL収集手段が前記優先クロール先URL記憶手段に記憶させた前記所定のWebページのURLを読み出し、前記一部のキュー記憶手段に記憶させる(1)に記載のクローラ管理システム。
(2)に記載の発明に係るクローラ管理システムは、(1)に記載のクローラ管理システムに加えて、定期的に所定のWebサイトにおける所定のWebページのデータを取得し、前回取得した当該所定のWebページのデータと比較して、変更があった場合に所定のWebページのURLを優先クロール先URL記憶手段に記憶させる。そして、クロール装置は、優先クロール先URL記憶手段に記憶されたURLを特定のURLとして読み出して、一部のキュー記憶手段に記憶させる。
これにより、所定のWebページが更新された場合に、所定のWebページのURLが定期的に優先クロール先URL記憶手段に記憶され、また、所定のWebページのURLが特定のURLとしてクローラに読み出される。このため、クローラは、優先的にそのURLに対応するWebページのデータを取得することができる。したがって、クロール装置は、クローラのプログラム自体を改変することなく、更新頻度の高い特定のWebページについて、定期的に情報を取得することができる。
(3)通信ネットワーク上に公開されたWebサーバを巡回してWebページのデータを取得するクロール装置と、前記クロール装置のクロール先を指定するクロール先管理装置と、からなるシステムに、特定のURLをクロールさせるクロール方法であって、前記クロール装置は、複数のクローラのクロール先を示すURLをキューとして記憶する複数のキュー記憶手段を備え、前記クロール先管理装置が、前記複数のキュー記憶手段のうち一部のキュー記憶手段に、前記複数のクローラを優先してクロールさせる前記特定のURLを記憶させるステップと、前記クロール装置が、前記特定のURLが前記一部のキュー記憶手段に記憶されたことに応じて、前記クローラに、当該記憶させた前記特定のURLを、それ以外の前記キュー記憶手段が記憶するURLに優先して読み込ませるステップと、を実行させるクロール方法。
(3)に記載の発明に係るクロール方法は、(1)に記載の発明と同様の効果を奏することができる。
本発明によれば、クローラのプログラム自体の改変を行わずに、更新頻度の高い特定のWebページに対応して情報を取得できるクローラ管理システム及び方法を提供することができる。
本発明の実施形態に係るクローラ管理システムの全体構成及びインターネット上のWebページのリンク構造を示す概念図である。 本実施形態における優先クロール先リストテーブルを示す図である。 本実施形態における優先クロール先URLテーブルを示す図である。 本実施形態におけるクローラ部の動きを示す概念図である。 本実施形態におけるクローラ部の動きを示す概念図である。 本実施形態における優先クロール先収集部が行う処理の流れを示すフローチャートである。 本実施形態におけるクローラ部の処理の流れを示すフローチャートである。
以下、本発明の実施形態について図面を参照して説明する。なお、以下に説明する実施形態は、あくまでも一例であって、本発明の技術的範囲はこれに限られるものではない。
図1を参照して、本実施形態の一例である、クローラ管理システム1の全体構成について説明する。図1は、本実施形態に係るクローラ管理システム1の全体構成及びインターネットN上のWebページのリンク構造を示す概念図である。
本実施形態に係るクローラ管理システム1は、クロール装置10と、クロール先管理装置20とで構成される。
クロール装置10は、通信ネットワークとしてのインターネットN上に公開されているWebサーバ30を巡回して、Webページのデータを取得する。
クロール先管理装置20は、クロール装置10に優先的にWebページのデータを取得させる特定のWebページのURL(以下、特定URLとする。例えば、図1のP11,P22,P31等)を指定する。
ここで、特定URLは、所定のWebサイトにおいて、更新があったか否かを定期的にチェックする対象となるWebページ(以下、特定Webページとする)のURLである。特定Webページは、例えば、あるWebサイトにおいて、商品等の人気ランキング等が表示され、更新頻度が比較的高いWebページである。
まず、クロール装置10について説明する。
クロール装置10は、記憶部11と、制御部12とを備える。
制御部12は、優先クロール先指定手段としての優先クロール先指定部122と、複数のクローラとしての第1クローラ123a、第2クローラ123b、・・・第Nクローラ123n(以下、総称する場合はクローラ部123とする)とで構成される。
ここで、制御部12は、CPU(Central Processing Unit:中央処理装置)等により構成し、クロール装置10の各処理の実行を制御する。制御部12は、上記の各部の機能を実現するためのプログラムを記憶部11から読み込んで実行することによりその機能を実現させるものであってもよいし、また、専用のハードウェアにより実現されるものであってもよい。
記憶部11は、複数のキュー記憶手段としての第1キュー記憶部112a、第2キュー記憶部112b、・・・第Xキュー記憶部112x(以下、総称する場合は、キュー記憶部112とする)と、Webデータ記憶部114とを備える。
ここで、記憶部11は、ハードディスク装置や光磁気ディスク装置、ROM(Read Only Memory)等の不揮発性のメモリ、RAM(Random Access Memory)等の揮発性のメモリ、あるいはこれらの組み合わせによるコンピュータ読み取り可能及び書き込み可能な記憶媒体により構成される。
次に、制御部12及び記憶部11を構成する各部の機能構成について説明する。
優先クロール先指定部122は、優先クロール先収集部121からの通知に応じて、特定URLを優先クロール先URL記憶部111から取得し、第1キュー記憶部112aに格納させる。そして、優先クロール先指定部122は、第1キュー記憶部112aに格納した後、優先クロール先URL記憶部111から読み出した特定URLを消去する。
クローラ部123は、キュー記憶部112からURLを読み出して、当該URLに対応するWebページのデータを取得し、Webデータ記憶部114に記憶させる。クローラ部123は、本実施形態では第1クローラ123a、第2クローラ123b、・・・第Nクローラ123nのように、任意の数のクローラを備える。
なお、図1では、便宜上、クローラ部123の参照先のキュー記憶部112及び接続先のURL(S1,S2,Sn等及びP11,P21等)への接続を示す矢印は限定されているが、図に示す参照先及び接続先に限らない。クローラ部123のそれぞれは、キュー記憶部112のそれぞれを参照し、かつ全ての接続先のURLに接続する可能性がある。図4及び図5も同様である。
また、第1クローラ123a、第2クローラ123b、・・・第Nクローラ123nは、それぞれ、第1キュー記憶部112a、第2キュー記憶部112b、・・・第Xキュー記憶部112xのいずれからも特定URL又はURLを取得できる。第1クローラ123a、第2クローラ123b、・・・第Nクローラ123nは、全て、第1キュー記憶部112aに特定URLが格納された場合には、他のキュー記憶部(第2キュー記憶部112b、・・・第Xキュー記憶部112x)に優先して、第1キュー記憶部112aに格納された特定URLを取得する。
つまり、クローラ部123は、常に第1キュー記憶部112aに優先的に参照して、第1キュー記憶部112aに特定URLが格納されている場合はこれを取得し、第1キュー記憶部112aに特定URLが格納されていない場合に、他のキューとなる第2キュー記憶部112b、・・・第Xキュー記憶部112xからURL(例えば、図1のS1,S2,Sn等)を取得する。
また、クローラ部123は、第2キュー記憶部112b、・・・第Xキュー記憶部112xからURLを読み出して当該URLのWebページのデータを取得した場合には、当該Webページのテキストデータ等を抽出してWebデータ記憶部114に記憶させると共に、当該データに含まれるリンク先のURLを抽出し、第2キュー記憶部112b、・・・第Xキュー記憶部112xに格納させる。
また、クローラ部123は、第1キュー記憶部112aから特定URLを読み出した場合は、当該特定URLのWebページのデータをWebデータ記憶部114に格納するが、当該Webページ(特定Webページ)に含まれるリンク先のURLの抽出は行わない。
したがって、クローラ部123が第1キュー記憶部112aから特定URLを読み出した場合は、当該特定URLのWebページのデータの取得のみが行われる。
ここで、キュー記憶部112は、キューにより実装され、先入れ先出しのデータ構造を有する。キュー記憶部112には、優先クロール先指定部122又はクローラ部123が取得した特定URL又は他のURLが格納される。本実施形態では、第1キュー記憶部112aには、優先クロール先指定部122が取得した特定URLが格納される。第2キュー記憶部112b、・・・第Xキュー記憶部112xには、クローラ部123が取得した、特定URLとは異なる他のURLが格納される。なお、本実施形態では、優先クロール先指定部122が特定URLを記憶させるのを第1キュー記憶部112aとしているが、優先クロール先指定部122が特定URLを記憶させる対象のキュー記憶部112を複数設けてもよい。
Webデータ記憶部114は、クローラ部123が収集したWebページのデータを格納する。このWebページのデータは、検索エンジンの一部であるインデクサ(図示せず)によりインデックス化され、検索エンジンによる検索に使用される。
次に、クロール先管理装置20について説明する。
クロール先管理装置20は、記憶部21と制御部22とを備え、記憶部21は、優先クロール先リスト記憶部110及び優先クロール先URL記憶手段としての優先クロール先URL記憶部111を備える。また、制御部22は、優先クロール先収集部121を備える。
なお、記憶部21及び制御部22は、それぞれ、クロール装置10と同様のハードウェア構成を備えることができる。
制御部22の優先クロール先収集部121は、優先クロール先リスト記憶部110に記憶されている特定Webページ(例えば、図1のP11,P12,P21,P22,P31等)の更新の有無を判別する。
ここで、図2を参照して、優先クロール先リスト記憶部110が記憶する優先クロール先リストテーブル40について説明する。
優先クロール先リストテーブル40は、「Webサイト名」列と、「特定URL」列と、「ハッシュ値」列とで構成されている。
Webサイト名は、上記の所定のWebサイトの名称である。優先クロール先リスト記憶部110は、管理者端末等からの指定を受け付けたことに応じて、所定のWebサイト名を記憶する。
ハッシュ値は、優先クロール先収集部121が特定Webページに接続してそのデータを取得した際に当該特定Webページのデータに基づいて計算したものである。「ハッシュ値」列には、このハッシュ値が格納される。したがって、優先クロール先収集部121が前回接続した際の特定Webページのデータと今回接続した際のWebページのデータが異なっている場合には、このハッシュ値が異なることから、更新の有無がわかる。
図1に戻って、優先クロール先収集部121は、定期的に特定Webページのデータを取得し、ハッシュ関数を適用して特定Webページのデータについてのハッシュ値を求める。そして、優先クロール先収集部121は、優先クロール先リスト記憶部110の優先クロール先リストテーブル40を参照して、該当する特定Webページのハッシュ値と、求めたハッシュ値とを比較する。比較した結果、優先クロール先リストテーブル40のハッシュ値と求めたハッシュ値とが異なる場合、当該特定Webページは更新されたことを意味する。この場合、優先クロール先収集部121は、算出したハッシュ値を、優先クロール先リストテーブル40に格納されているハッシュ値に代えて、新たに記憶させる。また、優先クロール先収集部121は、優先クロール先URL記憶部111にハッシュ値を比較した特定URLを格納する。そして、優先クロール先収集部121は、クロール装置10の優先クロール先指定部122に特定Webページの更新があった旨を通知する。
本実施形態では、このように、特定URLは、優先クロール先指定部122が優先クロール先URL記憶部111から読み出したURLであり、また、優先クロール先収集部121が定期的に更新の有無を確認する特定URLであり、第1キュー記憶部112aに格納されて優先的にクロール対象となるURLである。
ここで、図3を参照して、優先クロール先URL記憶部111が記憶する優先クロール先URLテーブル50について説明する。
優先クロール先URLテーブル50は、特定URLが格納される「特定URL」列と、特定URLが格納された時刻情報が格納される「登録時刻」列とで構成される。クロール装置10の優先クロール先指定部122は、登録された順に特定URLを取得し、第1キュー記憶部112aに記憶させる。また、優先クロール先指定部122により読み出された特定URLは、優先クロール先URLテーブル50から順次消去される。
優先クロール先収集部121は、定期的にWebページのデータを取得する。例えば、優先クロール先リスト記憶部110の優先クロール先リストテーブル40に日付情報を格納する列を設け、対応する特定Webページのデータを取得した日から所定日数経過後(例えば、7日後等)に優先クロール先収集部121が特定Webページのデータを取得する。この日付情報は、時刻の情報も含んでよく、1時間単位、分単位、秒単位又は月単位等、優先クロール先収集部121が特定Webページのデータを取得する間隔に合わせて、また、特定Webページごとに登録することができる。
また、優先クロール先収集部121は、所定間隔で特定Webページのデータを取得するようにしてもよい。優先クロール先収集部121が特定Webページのデータを取得する間隔は、任意であってよい。例えば、特定Webページのサイトマップ・プロトコルにおいて<changefreq>タグで特定Webページの更新間隔が宣言されている場合は、その更新間隔の情報を優先クロール先リスト記憶部110に記憶させておき、当該更新間隔の情報にしたがって、Webページに接続してデータを収集することができる。
ここで、図4及び図5を参照して、主としてクローラ部123の動きについて、例を挙げて説明する。図4及び図5は、本実施形態におけるクローラ部123の動きを示す概念図である。以下では、クローラ部123は、常に、特定URLが格納される第1キュー記憶部112aを最初に参照するものとする。なお、特に説明しない構成については図示していない。また、図4及び図5に記載している数字は、各部が動作したタイミングの順を示す。
第1クローラ123aは、最初に第1キュー記憶部112aを参照する(図4の(1))。このとき、優先クロール先指定部122は、特定URLを第1キュー記憶部112aに格納していない。したがって、第1クローラ123aは、第2キュー記憶部112bを参照して、第2キュー記憶部112bからURLS1を取得する(図4の(2))。このURLS1は、第1クローラ123aが接続するWebサイト内のWebページを巡回する起点となるURLである(以下、このURLをシードS1とする)。第1クローラ123aは、シードS1のWebページのデータを取得すると、当該Webページのデータを解析して、Webページのデータに含まれるリンク先URLS111,S112を抽出する。そして、第1クローラ123aは、抽出したリンク先URLS111,S112を第2キュー記憶部112bに格納する。
優先クロール先指定部122は、第1クローラ123aが第1キュー記憶部112aを参照した時には、特定URLを第1キュー記憶部112aに格納していなかったが、その後、クロール先管理装置20の優先クロール先収集部121から優先クロール先URL記憶部111に特定URLP21を格納した旨の通知を受信したことに応じて、優先クロール先URL記憶部111から特定URLP21を取得し、当該特定URLP21を第1キュー記憶部112aに格納したとする(図4の(3))。
第2クローラ123bは、優先クロール先指定部122が第1キュー記憶部112aに特定URLP21を格納した後のタイミングで第1キュー記憶部112aを参照したとする(図4の(4))。すると、第1キュー記憶部112aには、特定URLP21が格納されているため、第2クローラ123bは、この特定URLP21を取得する。そして、第2クローラ123bは、取得した特定URLP21に対応する特定Webページのデータを取得し、Webデータ記憶部114(図4では図示せず)に記憶させる。
リンク先URLS111,S112を第2キュー記憶部112bに格納した第1クローラ123aは、再び第1キュー記憶部112aを参照する(図5の(5))。すると、このとき、第1キュー記憶部112aには特定URLは格納されていないので、再び第2キュー記憶部112bを参照し、URLS111を取得する(図5の(6))。
次に第2クローラ123bが第1キュー記憶部112aを参照すると、特定URLは格納されていない(図5の(7))ため、第Xキュー記憶部112xを参照して、URLSn1を取得する(図5の(8))。そして、URLSn1のWebページのデータを解析し、リンク先URLSn2を抽出して、当該リンク先URLSn2を第Xキュー記憶部112xに格納する。
このように、クローラ部123は、それぞれ、特定URLが格納される第1キュー記憶部112aに参照したタイミングで特定URLが格納されていれば、優先的に特定URLを取得し、特定URLが示す特定Webページのデータを取得する。他方で、クローラ部123は、それぞれ、特定URLが格納される第1キュー記憶部112aに参照したタイミングで特定URLが格納されていなければ、他のキュー記憶部となる第2キュー記憶部112b等を参照して、特定URLとは異なるURLを取得する。
また、第1キュー記憶部112aから特定URLを取得したクローラ部123であっても、再度第1キュー記憶部112aを参照したときに特定URLが格納されていなければ、第2キュー記憶部112b等を参照してURLを取得する。
図6を参照して、クロール先管理装置20の優先クロール先収集部121が行う処理の流れについて説明する。図6は、本実施形態における優先クロール先収集部121が行う処理の流れを示すフローチャートである。
ステップS11では、クロール先管理装置20の優先クロール先収集部121は、優先クロール先リスト記憶部110から特定URLを読み込む。そして、優先クロール先収集部121は、特定URLに対応する特定Webページのデータを取得する(ステップS12)。
ステップS13では、優先クロール先収集部121は、取得したデータについてハッシュ値を求める。そして、優先クロール先収集部121は、求めたハッシュ値と、優先クロール先リスト記憶部110に記憶されている当該特定Webページのハッシュ値とを比較する(ステップS14)。
ステップS15では、優先クロール先収集部121は、ステップS13で求めたハッシュ値と優先クロール先リスト記憶部110に記憶されているハッシュ値とが異なるか否かを判別する。優先クロール先収集部121は、求めたハッシュ値と優先クロール先リスト記憶部110のハッシュ値とが異なる場合(ステップS15でYESの場合)にステップS16に処理を移し、求めたハッシュ値と優先クロール先リスト記憶部110のハッシュ値とが異なるのではない場合(ステップS15でNOの場合)、処理を終了する。
ステップS16では、優先クロール先収集部121は、算出したハッシュ値を、新たなハッシュ値として優先クロール先リスト記憶部110に記憶させる。そして、優先クロール先収集部121は、特定Webページが更新された旨をクロール装置10の優先クロール先指定部122に通知(ステップS17)し、処理を終了する。
図7を参照して、クロール装置10のクローラ部123の処理の流れについて説明する。図7は、本実施形態におけるクローラ部123の処理の流れを示すフローチャートである。
ステップS21では、クロール装置10のクローラ部123は、第1キュー記憶部112aを参照して、特定URLが格納されているか否かを判別する。クローラ部123は、特定URLが格納されている場合(ステップS21でYESの場合)に、ステップS22に処理を移し、特定URLが格納されていない場合(ステップS21でNOの場合)に、ステップS24に処理を移す。
ステップS22では、クローラ部123は、第1キュー記憶部112aから特定URLを取得する。そして、クローラ部123は、取得した特定URLのWebページ(特定Webページ)からデータを取得(ステップS23)し、ステップS28に処理を移す。
ステップS24では、クローラ部123は、他のキュー記憶部112(第2キュー記憶部112b、・・・第Xキュー記憶部112x)からURLを取得する。そして、取得したURLのWebページのデータを取得する(ステップS25)。
ステップS26では、クローラ部123は、取得したWebページのデータを解析し、当該データに含まれるリンク先のURLを抽出する。そして、クローラ部123は、抽出したURLを他のキュー記憶部112(第2キュー記憶部112b、・・・第Xキュー記憶部112x)に格納させる(ステップS27)。
ステップS28では、クローラ部123は、Webページのテキストデータを抽出する。そして、クローラ部123は、抽出したデータをWebデータ記憶部114に記憶させ(ステップS29)、処理を終了する。
上述の実施形態によれば、特定Webページのデータが更新されたか否かをクローラ部123の処理とは別にクロール先管理装置20の優先クロール先収集部121がチェックし、更新があった場合に当該特定URLを優先クロール先URL記憶部111に記憶させると共にクロール装置10の優先クロール先指定部122に通知する。通知を受けた優先クロール先指定部122は、優先クロール先URL記憶部111から特定URLを取得し、第1キュー記憶部112aに格納させる。したがって、クローラ部123は、更新に応じて特定Webページのデータを取得することができる。このため、クローラ部123は、更新の無いときに特定Webページのデータを取得したりするようなことが無く、効率的にデータの更新を行うことができる。
上述の実施形態によれば、第1キュー記憶部112aは、優先クロール先収集部121が更新があったと判別した特定URLを格納する。また、クローラ部123は、第1キュー記憶部112aから優先的に参照し、第1キュー記憶部112aに特定URLが格納されている場合は、当該URLを取得する。したがって、クロール装置10は、特定Webページのデータを他のURLより優先して取得することができる。取得したWebページ内のリンク先URLを辿るだけでは、特定Webページに到達しない可能性があるが、クロール装置10は、特定URLが格納される第1キュー記憶部112aを優先的に参照して特定URLを取得するので、確実に特定Webページのデータを取得することができる。
上述の実施形態によれば、クローラ部123は、第1キュー記憶部112aを優先的に参照し、特定URLが格納されていれば、これを取得する。また、クローラ部123は、第1キュー記憶部112aに特定URLが格納されていなければ、他の第2キュー記憶部112b等を参照して特定URLを取得する。このように、第1キュー記憶部112aを参照するクローラが特定されておらず、全てのクローラが第1キュー記憶部112aを優先的に参照するので、第1キュー記憶部112aに格納された特定URLを迅速に取得して、特定Webページのデータを取得することができる。
上述の実施形態によれば、クロール装置10とクロール先管理装置20とを分離させたことにより、クロール装置10とクロール先管理装置20との間にファイアウォール等を設けることができるため、セキュリティを向上させることができる。また、クロール先管理装置20をクロール装置10と分離させたことにより、メンテナンスが容易となり、またシステムの拡張等にも容易に対応することができる。
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態に記載されたものに限定されるものではない。
10 クロール装置
20 クロール先管理装置
30 Webサーバ
110 優先クロール先リスト記憶部
111 優先クロール先URL記憶部
112a 第1キュー記憶部
112b 第2キュー記憶部
112n 第Nキュー記憶部
114 Webデータ記憶部
121 優先クロール先収集部
122 優先クロール先指定部
123a 第1クローラ
123b 第2クローラ
123x 第Xクローラ
N インターネット

Claims (3)

  1. 通信ネットワーク上に公開されたWebサーバを巡回してWebページのデータを取得するクロール装置と、前記クロール装置のクロール先を指定するクロール先管理装置と、を備えるクローラ管理システムであって、
    前記クロール装置は、
    前記クロール先を示すURLをキューとして記憶する複数のキュー記憶手段と、
    前記複数のキュー記憶手段が記憶したURLを読み込んで対応するWebページのデータを取得する複数のクローラと、を備え、
    前記クロール先管理装置は、
    前記複数のキュー記憶手段のうち一部のキュー記憶手段に、前記複数のクローラを優先してクロールさせる特定のURLを記憶させる優先クロール先指定手段と、を備え、
    前記クローラは、前記優先クロール先指定手段が前記特定のURLを前記一部のキュー記憶手段に記憶させたことに応じて、当該記憶させた前記特定のURLを、それ以外の前記キュー記憶手段が記憶するURLに優先して読み込むクローラ管理システム。
  2. 前記クロール先管理装置は、
    定期的に所定のWebサイトにおける所定のWebページのデータを取得して記憶し、前回取得した前記所定のWebページのデータと比較することにより、変更があったと判断した場合に、前記所定のWebページのURLを、優先クロール先URL記憶手段に記憶させる優先クロール先URL収集手段をさらに備え、
    前記優先クロール先指定手段は、前記優先クロール先URL収集手段が前記優先クロール先URL記憶手段に記憶させた前記所定のWebページのURLを読み出し、前記一部のキュー記憶手段に記憶させる請求項1に記載のクローラ管理システム。
  3. 通信ネットワーク上に公開されたWebサーバを巡回してWebページのデータを取得するクロール装置と、前記クロール装置のクロール先を指定するクロール先管理装置と、からなるシステムに、特定のURLをクロールさせるクロール方法であって、
    前記クロール装置は、複数のクローラのクロール先を示すURLをキューとして記憶する複数のキュー記憶手段を備え、
    前記クロール先管理装置が、前記複数のキュー記憶手段のうち一部のキュー記憶手段に、前記複数のクローラを優先してクロールさせる前記特定のURLを記憶させるステップと、
    前記クロール装置が、前記特定のURLが前記一部のキュー記憶手段に記憶されたことに応じて、前記クローラに、当該記憶させた前記特定のURLを、それ以外の前記キュー記憶手段が記憶するURLに優先して読み込ませるステップと、を実行させるクロール方法。
JP2010083826A 2010-03-31 2010-03-31 クローラ管理システム及び方法 Active JP5063729B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010083826A JP5063729B2 (ja) 2010-03-31 2010-03-31 クローラ管理システム及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010083826A JP5063729B2 (ja) 2010-03-31 2010-03-31 クローラ管理システム及び方法

Publications (2)

Publication Number Publication Date
JP2011215912A JP2011215912A (ja) 2011-10-27
JP5063729B2 true JP5063729B2 (ja) 2012-10-31

Family

ID=44945572

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010083826A Active JP5063729B2 (ja) 2010-03-31 2010-03-31 クローラ管理システム及び方法

Country Status (1)

Country Link
JP (1) JP5063729B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103164435B (zh) * 2011-12-13 2016-03-09 北大方正集团有限公司 一种网络数据的采集方法和系统
JP6078617B2 (ja) * 2015-10-15 2017-02-08 株式会社エヌ・ティ・ティ・データ 配信情報解析装置、配信情報解析方法、配信情報解析プログラム
JP6961987B2 (ja) * 2017-04-12 2021-11-05 富士通株式会社 日時情報抽出方法、日時情報抽出装置及び日時情報抽出プログラム
CN110633429A (zh) * 2018-05-31 2019-12-31 北京京东尚科信息技术有限公司 内容爬取方法与装置以及分布式爬虫系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11328191A (ja) * 1998-05-13 1999-11-30 Nec Corp Wwwロボット検索システム
JP2001092745A (ja) * 1999-09-17 2001-04-06 Internet Research Institute Inc インターネットのウェブコンテンツデータを静止衛星を利用して複数のサーバコンピュータへマルチキャストデータ配信を行うための通信システムおよびその方法
JP2001222425A (ja) * 2000-02-10 2001-08-17 Nec Software Kobe Ltd ウィルス駆除システムと方法および記録媒体
JP2002342371A (ja) * 2001-05-16 2002-11-29 Nec Corp Www検索システムおよび方法
JP2004070957A (ja) * 2003-08-01 2004-03-04 Toshiba Corp 検索システム
EP1934825A4 (en) * 2005-08-29 2009-11-18 Google Inc MAPS OF MOBILE SITES
JP4795258B2 (ja) * 2007-01-29 2011-10-19 三菱電機株式会社 Webページ再収集方式

Also Published As

Publication number Publication date
JP2011215912A (ja) 2011-10-27

Similar Documents

Publication Publication Date Title
US8893043B2 (en) Method and system for predictive browsing
US8799262B2 (en) Configurable web crawler
US8417686B2 (en) Web crawler scheduler that utilizes sitemaps from websites
CA2492348C (en) Decision-theoretic web-crawling and predicting web-page change
US9912766B2 (en) System and method for identifying a link and generating a link identifier for the link on a webpage
US10324984B2 (en) System and method for content selection for web page indexing
US20120066576A1 (en) Anchor Tag Indexing in a Web Crawler System
JP4795258B2 (ja) Webページ再収集方式
JP5063729B2 (ja) クローラ管理システム及び方法
JP2004512615A (ja) 参照されるリソースを先取りする方法および装置
JP5782937B2 (ja) タグ管理装置、タグ管理システムおよびタグ管理プログラム
RU2449360C1 (ru) Система и способ формирования антивирусных баз в соответствии с параметрами персонального компьютера
JP4741301B2 (ja) 情報検索システム、情報検索装置、情報検索方法、記録媒体及びプログラム
US9529911B2 (en) Building of a web corpus with the help of a reference web crawl
JP5018536B2 (ja) 情報サービス検索システム、巡回収集方法、及び情報サービス巡回収集プログラム
JP6960274B2 (ja) データ収集装置、データ収集方法、およびプログラム
JP2003271494A (ja) 情報収集システム、情報収集方法、情報収集プログラムおよび記録媒体
JP5165717B2 (ja) デッドリンク判定装置及び方法
CN110674757A (zh) 布控方法、系统及计算机可读存储介质
KR101934629B1 (ko) 유사 이미지 검색 기반 지명 검색 시스템 및 방법
JP6967870B2 (ja) データベース連携システム、データベース連携方法、およびプログラム
JP2011129146A (ja) ネットワーク上の情報を自動検索する情報検索システム、情報検索装置、情報検索方法、記録媒体及びプログラム
JP4917057B2 (ja) 情報収集方法及び情報収集装置
JP5801218B2 (ja) Urlフィルタリングシステム
JP2006134169A (ja) 検索エンジンシステム、インデキシング装置、インデックス情報中継装置、および情報検索方法

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20120312

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120628

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120710

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120807

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5063729

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150817

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250