(57)【要約】【課題】目的サイトの収集漏れを抑制することを課題とする。【解決手段】情報取得装置１０は、Ｗｅｂページのデータを受け付け、受け付けたデータに特定の文字列とＵＲＬが含まれる場合、文字列とＵＲＬの距離に応じて、探索の対象とするＷｅｂページの階層を決定し、決定した階層に応じたＷｅｂページのデータが特定の条件を満たすか否かを判定する。【選択図】図１
2019144823.tif 000002
【特許請求の範囲】
【請求項１】
Ｗｅｂページのデータを受け付け、
受け付けた前記データに特定の文字列とＵＲＬが含まれる場合、前記文字列と前記ＵＲＬの距離に応じて、探索の対象とするＷｅｂページの階層を決定し、
決定した前記階層に応じたＷｅｂページのデータが特定の条件を満たすか否かを判定する、
処理をコンピュータに実行させることを特徴とする情報取得プログラム。
【請求項２】
前記決定する処理は、前記文字列と前記ＵＲＬの距離が近くなるにしたがって前記探索の対象とするＷｅｂページの階層を深く決定することを特徴とする請求項１に記載の情報取得プログラム。
【請求項３】
前記判定する処理は、決定した前記階層に応じたＷｅｂページのデータに前記特定の文字列とは異なる所定の文字列が含まれる否かを判定することを特徴とする請求項１または２に記載の情報取得プログラム。
【請求項４】
前記距離は、前記文字列と前記ＵＲＬの間に存在する文字の数、または、前記文字列と前記ＵＲＬの間に存在する文字のデータ量であることを特徴とする請求項１、２または３に記載の情報取得プログラム。
【請求項５】
Ｗｅｂページのデータを受け付け、
受け付けた前記データに特定の文字列とＵＲＬが含まれる場合、前記文字列と前記ＵＲＬの距離に応じて、探索の対象とするＷｅｂページの階層を決定し、
決定した前記階層に応じたＷｅｂページのデータが特定の条件を満たすか否かを判定する、
処理をコンピュータが実行することを特徴とする情報取得方法。
【請求項６】
Ｗｅｂページのデータを受け付ける受付部と、
受け付けた前記データに特定の文字列とＵＲＬが含まれる場合、前記文字列と前記ＵＲＬの距離に応じて、探索の対象とするＷｅｂページの階層を決定する決定部と、
決定した前記階層に応じたＷｅｂページのデータが特定の条件を満たすか否かを判定する判定部と、
を有することを特徴とする情報取得装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報取得プログラム、情報取得方法及び情報取得装置に関する。
【背景技術】
【０００２】
Ｗｅｂ上に存在する情報を取得するツールの一例として、Ｗｅｂサイト内のリンクを探索してＷｅｂページを収集するクローラが知られている。このクローラ等のツールを用いてＷｅｂページを収集する場合、目的とするＷｅｂサイト（以下、「目的サイト」と記載）を絞り込む側面からキーワードが検索に用いられる。
【０００３】
このようなキーワードには、一つの側面として、目的サイトで高頻度に出現する単語やフレーズなどが指定される。例えば、特定のコミュニティだけで通じる俗語や特定のコミュニティの外部に秘匿することを意図して使用される隠語などがキーワードとして指定される。
【０００４】
これら俗語や隠語がＷｅｂサイト上で用いられる場合、単語やフレーズが本来の意味、例えば辞書通りの意味とは異なる意味で使用されることがある。このため、俗語や隠語がキーワードとして指定された場合、目的サイトのＷｅｂページだけでなく、俗語や隠語として用いられる単語やフレーズが本来の意味で使用された目的外のサイトも収集される。このように目的外のサイトが収集されることで、クローラにより収集されるデータ量が増大する場合がある。このような側面から、Ｗｅｂページに含まれるリンクを探索する階層が制限される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−１３２０６１号公報
【特許文献２】特開２００９−３７４２０号公報
【特許文献３】特開２０００−３３９３１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記の技術では、目的サイトの収集漏れが発生する場合がある。すなわち、Ｗｅｂページに含まれるリンクを探索する階層を制限される場合、制限された階層に探索が達した段階で探索が打ち切られる。それ故、制限により打ち切られた階層よりも深い階層に目的サイトが存在する場合、目的サイトを収集することができない。
【０００７】
１つの側面では、本発明は、目的サイトの収集漏れを抑制できる情報取得プログラム、情報取得方法及び情報取得装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
一態様では、情報取得プログラムは、Ｗｅｂページのデータを受け付け、受け付けた前記データに特定の文字列とＵＲＬが含まれる場合、前記文字列と前記ＵＲＬの距離に応じて、探索の対象とするＷｅｂページの階層を決定し、決定した前記階層に応じたＷｅｂページのデータが特定の条件を満たすか否かを判定する、処理をコンピュータに実行させる。
【発明の効果】
【０００９】
目的サイトの収集漏れを抑制できる。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施例１に係る情報取得システムの構成例を示す図である。
【図２】図２は、探索設定画面の一例を示す図である。
【図３】図３は、Ｗｅｂページの一例を示す図である。
【図４】図４は、Ｗｅｂページの探索方法の一例を示す図である。
【図５】図５は、実施例１に係る情報取得処理の手順を示すフローチャート（１）である。
【図６】図６は、実施例１に係る情報取得処理の手順を示すフローチャート（２）である。
【図７】図７は、実施例１及び実施例２に係る情報取得プログラムを実行するコンピュータのハードウェア構成例を示す図である。
【発明を実施するための形態】
【００１１】
以下に添付図面を参照して本願に係る情報取得プログラム、情報取得方法及び情報取得装置について説明する。なお、この実施例は開示の技術を限定するものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【実施例１】
【００１２】
［システム構成］
図１は、実施例１に係る情報取得システムの構成例を示す図である。図１に示す情報取得システム１は、インターネットやイントラネットなどのネットワークＮＷ上に存在するＷｅｂサーバ３０から目的とするＷｅｂサイト（以下、「目的サイト」と記載）の情報を取得する情報取得サービスを提供するものである。
【００１３】
図１に示すように、情報取得システム１には、情報取得装置１０と、管理者端末２０とが含まれる。これら情報取得装置１０および管理者端末２０の間は、有線または無線を問わず、ＬＡＮ（Local  Area  Network）やＶＬＡＮ（Virtual  LAN）などの構内通信網等を介して接続される。
【００１４】
情報取得装置１０は、上記の情報取得サービスを提供するコンピュータである。
【００１５】
一実施形態として、情報取得装置１０は、パッケージソフトウェア又はオンラインソフトウェアとして、上記の情報取得サービスに対応する機能を実現する情報取得プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、情報取得装置１０は、上記の情報取得サービスを提供するサーバとしてオンプレミスに実装することとしてもよいし、アウトソーシングによって上記の情報取得サービスを提供するクラウドとして実装することとしてもかまわない。
【００１６】
管理者端末２０は、上記の情報取得サービスの提供を受けるクライアントの一例に対応する。例えば、管理者端末２０は、情報取得システム１の管理者等によって利用されるコンピュータである。例えば、管理者端末２０には、パーソナルコンピュータなどのデスクトップ型のコンピュータなどが対応する。これはあくまで一例であり、管理者端末２０は、ラックトップ型のコンピュータや携帯端末装置、ウェアラブル端末などの任意のコンピュータであってかまわない。
【００１７】
さらに、図１に示すように、情報取得装置１０は、任意のネットワークＮＷを介して、Ｗｅｂサーバ３０と接続される。このネットワークＮＷには、有線または無線を問わず、インターネットやイントラネットなど任意の通信網が対応する。
【００１８】
このように、情報取得装置１０は、上記の情報取得サービスを提供するサーバとして機能すると共に、上記の情報取得サービスに対応する機能を実現する側面から、Ｗｅｂクライアントとしての機能も有する。すなわち、情報取得装置１０では、Ｗｅｂサイト内のリンクを探索してＷｅｂページを収集するクローラ等のツールが目的サイトの情報を取得するために活用される。
【００１９】
Ｗｅｂサーバ３０は、Ｗｅｂクライアントからのリクエストに応答してＷｅｂページを提供するサーバである。このＷｅｂサーバ３０により運営されるＷｅｂサイトの種類は、特定の種類に限定されず、任意の種類であってかまわない。例えば、Ｗｅｂサイトの例には、ポータルの検索サイトを始め、個人のホームページやブログ、ＳＮＳ（Social  Networking  Service）サイト、匿名掲示板などが含まれる。
【００２０】
なお、図１には、Ｗｅｂシステムの構成要素として、Ｗｅｂクライアントに対応する情報取得装置１０およびＷｅｂサーバ３０を例示したが、これ以外の構成要素が含まれることを妨げない。例えば、Ｗｅｂシステムの構成要素として、データベースサーバやファイルサーバ、ロードバランサなどが含まれることとしてもかまわない。
【００２１】
［情報取得装置１０の構成］
図１に示すように、情報取得装置１０は、通信Ｉ／Ｆ（InterFace）部１１と、記憶部１３と、制御部１５とを有する。図１には、データの授受の関係を表す実線が示されているが、説明の便宜上、最小限の部分について示されているに過ぎない。すなわち、各処理部に関するデータの入出力は、図示の例に限定されず、図示以外のデータの入出力、例えば処理部及び処理部の間、処理部及びデータの間、並びに、処理部及び外部装置の間のデータの入出力が行われることとしてもかまわない。
【００２２】
通信Ｉ／Ｆ部１１は、他の装置、例えば管理者端末２０やＷｅｂサーバ３０等との間で通信制御を行うインタフェースである。
【００２３】
一実施形態として、通信Ｉ／Ｆ部１１には、ＬＡＮカードなどのネットワークインタフェースカードなどが対応する。例えば、通信Ｉ／Ｆ部１１は、管理者端末２０からクローラに探索を実行させる各種の設定の入力を受け付けたり、目的サイトの情報の取得結果を管理者端末２０へ提示したりする。また、通信Ｉ／Ｆ部１１は、ＷｅｂページのリクエストをＷｅｂサーバ３０に送信したり、Ｗｅｂサーバから送信されたＷｅｂページを受け付けたりする。
【００２４】
記憶部１３は、制御部１５で実行されるＯＳ（Operating  System）を始め、上記の情報取得プログラム、例えばアプリケーションプログラムやミドルウェアなどの各種プログラムに用いられるデータを記憶する記憶デバイスである。
【００２５】
一実施形態として、記憶部１３は、情報取得装置１０における補助記憶装置として実装することができる。例えば、記憶部１３には、ＨＤＤ（Hard  Disk  Drive）、光ディスクやＳＳＤ（Solid  State  Drive）などを採用できる。なお、記憶部１３は、必ずしも補助記憶装置として実装されずともよく、情報取得装置１０における主記憶装置として実装することもできる。この場合、記憶部１３には、各種の半導体メモリ素子、例えばＲＡＭ（Random  Access  Memory)やフラッシュメモリを採用できる。
【００２６】
記憶部１３は、制御部１５で実行されるプログラムに用いられるデータの一例として、探索設定データ１３ａと、コンテンツデータ１３ｂと、探索リストデータ１３ｃとを記憶する。これらのデータ以外にも、記憶部１３には、他の電子データが記憶されることとしてもかまわない。例えば、記憶部１３は、管理者端末２０を使用するユーザに付与されたアカウント情報、Ｗｅｂサーバ３０から収集されたＷｅｂページがインデックス化されたインデックスデータなども併せて記憶することもできる。なお、探索設定データ１３ａ、コンテンツデータ１３ｂ及び探索リストデータ１３ｃの説明は、各データの登録または参照が行われる制御部１５の説明と合わせて行うこととする。
【００２７】
制御部１５は、情報取得装置１０の全体制御を行う処理部である。
【００２８】
一実施形態として、制御部１５は、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などのハードウェアプロセッサにより実装することができる。ここでは、プロセッサの一例として、ＣＰＵやＭＰＵを例示したが、汎用型および特化型を問わず、任意のプロセッサ、例えばＧＰＵ（Graphics  Processing  Unit）やＤＳＰ（Digital  Signal  Processor）の他、ＧＰＧＰＵ（General-purpose  computing  on  graphics  processing  units）により実装することができる。この他、制御部１５は、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などのハードワイヤードロジックによって実現されることとしてもかまわない。
【００２９】
制御部１５は、図示しない主記憶装置として実装されるＲＡＭ（Random  Access  Memory）のワークエリア上に、上記の情報取得プログラムを展開することにより、下記の処理部を仮想的に実現する。
【００３０】
図１に示すように、制御部１５は、設定部１５ａと、要求部１５ｂと、受付部１５ｃと、解析部１５ｄと、判定部１５ｅと、決定部１５ｆとを有する。
【００３１】
設定部１５ａは、探索に関する各種の設定を実行する処理部である。
【００３２】
１つの側面として、設定部１５ａは、管理者端末２０から探索に関する各種の設定を受け付けることができる。例えば、設定部１５ａは、図２に示す探索設定画面２００を管理者端末２０に表示させることにより、探索設定画面２００に対するＧＵＩ（Graphical  User  Interface）操作を介して設定を受け付ける。
【００３３】
図２は、探索設定画面２００の一例を示す図である。図２に示すように、探索設定画面２００には、テキストボックス２０１〜２０６と、ボタン２１０及び２２０とのＧＵＩコンポーネントが含まれる。このうち、テキストボックス２０１では、クローラに探索を開始させる起点となるＷｅｂサイトの名称をテキスト入力により受け付けることができる。以下、探索を開始させる起点となるＷｅｂサイトのことを「起点サイト」と記載する場合がある。また、テキストボックス２０２では、起点サイトのＵＲＬをテキスト入力により受け付けることができる。以下、起点サイトのＵＲＬのことを「起点ＵＲＬ」と記載する場合がある。例えば、起点サイトには、起点サイト内のリンクもしくは他のドメインへのリンクが含まれるページ、例えばトップページなどが設定される。また、起点サイトの種類の例としては、各種のポータルサイトを始め、個人のホームページやブログ、ＳＮＳサイト、匿名掲示板などの任意の種類のＷｅｂサイトであってかまわない。さらに、起点サイトとして、情報発信元までのアクセス経路を変更したり、アクセス経路に含まれるノード間で暗号化を行ったりするＴｏｒ（The  onion  router）の匿名技術が利用されたＴｏｒサイトを設定することもできる。
【００３４】
また、テキストボックス２０３では、リンクの探索を継続する条件として指定されるキーワード、例えば単語やフレーズ等をテキスト入力により受け付けることができる。以下、リンクの探索を継続する条件として指定されるキーワードのことを「探索キーワード」と記載する場合がある。また、テキストボックス２０４では、Ｗｅｂページを保存する条件として指定されるキーワードをテキスト入力により受け付けることができる。以下、Ｗｅｂページを保存する条件として指定されるキーワードが目的サイトの確定に用いられる側面から「確定キーワード」と記載する場合がある。例えば、探索キーワードや確定キーワードには、目的サイトで高頻度に出現する単語やフレーズなどが指定される。一例として、特定のコミュニティだけで通じる俗語や特定のコミュニティの外部に秘匿することを意図して使用される隠語などが指定される。これらの語彙のうち、目的サイトでターゲットとする対象物そのものよりも対象物へ誘導するニュアンスに違い語彙を探索キーワードに設定すると共に、目的サイトでターゲットとする対象物そのものやその隠語を確定キーワードに設定するといった使い分けを行うことができる。
【００３５】
また、テキストボックス２０５では、起点サイトから起算してリンクを探索する上限とする階層の数をテキスト入力により受け付けることができる。以下、起点サイトから起算してリンクを探索する上限とする階層のことを「探索上限階層」と記載する場合がある。また、テキストボックス２０６では、テキストボックス２０１〜２０５を介して入力された条件にしたがって目的サイトの情報を取得する周期をテキスト入力により受け付けることができる。また、ボタン２１０では、テキストボックス２０１〜２０６を介して入力された設定を登録することができる。ボタン２２０では、テキストボックス２０１〜２０６を介して入力された設定の登録をキャンセルすることができる。
【００３６】
これらテキストボックス２０１〜２０６にデータが入力された状態でボタン２１０に対する操作を受け付けた場合、起点サイト名、起点ＵＲＬ、探索キーワード、確定キーワード、探索上限階層、チェック周期などの項目を含むデータが探索設定データ１３ａとして記憶部１３に登録される。この探索設定データ１３ａとして、必ずしも上記の項目の全てが設定されずともかまわない。例えば、探索上限階層やチェック周期には、情報取得システム１の管理者が各起点サイトの間で用いる固定値を事前に設定しておくこともできる。
【００３７】
要求部１５ｂは、Ｗｅｂページをリクエストする処理部である。
【００３８】
１つの側面として、要求部１５ｂは、記憶部１３に探索設定データ１３ａが新規に登録された場合、あるいは登録済みの探索設定データ１３ａに含まれるチェック周期が経過する場合などをトリガーとし、目的サイトの情報の取得を開始する。すなわち、要求部１５ｂは、記憶部１３に記憶された探索設定データ１３ａに含まれる起点ＵＲＬに基づいてＨＴＴＰ（HyperText  Transfer  Protocol）リクエストをＷｅｂサーバ３０に送信する。このＨＴＴＰリクエストには、ＨＴＴＰメソッド、ドメイン名で指定されるＷｅｂサーバ３０上で参照先のドキュメントの所在位置を指定するＵＲＬ、この場合は「起点ＵＲＬ」などが含まれる。なお、ここでは、あくまで１つの側面として、起点ＵＲＬにしたがってリクエストを送信する場合を例示したが、リクエストの対象は起点サイトのＷｅｂページに限定されない。例えば、起点サイトに含まれるリンク、さらには起点サイトのリンクを辿って探索されたＷｅｂページ内のリンクのＵＲＬについてもリクエストが送信される場合がある。
【００３９】
受付部１５ｃは、Ｗｅｂページを受け付ける処理部である。
【００４０】
１つの側面として、受付部１５ｃは、要求部１５ｂにより送信されたＨＴＴＰリクエストのレスポンスとして、Ｗｅｂサーバ３０から送信されたＷｅｂページのデータ、すなわちＨＴＴＰボディ部のデータを受け付ける。このようにＷｅｂサーバ３０からのレスポンスに含まれるＨＴＴＰボディ部のデータを受信することにより、マークアップ言語で記述されたドキュメント、例えばＨＴＭＬ（HyperText  Markup  Language）文書を受け付けることができる。このＨＴＭＬ文書には、テキストを始め、画像や音声、動画などのコンテンツが含まれてかまわない。なお、Ｗｅｂシステムで授受されるデータは、必ずしもＨＴＭＬ文書でなくともよく、他のドキュメント、例えばＸＭＬ（Extensible  Markup  Language）文書であってもかまわない。
【００４１】
解析部１５ｄは、Ｗｅｂページを解析する処理部である。
【００４２】
１つの側面として、解析部１５ｄは、受付部１５ｃが受け付けたＷｅｂページのテキストマイニング等を実行する。例えば、解析部１５ｄは、Ｗｅｂページに含まれるテキストの中から探索設定データ１３ａに含まれる確定キーワードに対応する文字列を検出する。また、解析部１５ｄは、Ｗｅｂページに含まれるテキストの中から探索設定データ１３ａに含まれる探索キーワードに対応する文字列を検出する。さらに、解析部１５ｄは、Ｗｅｂページに含まれるテキストの中からリンクとして埋め込まれたＵＲＬの書式、例えば「ｈｔｔｐ：＋ドメイン名」や「ｈｔｔｐ：＋ドメイン名＋パス名」などに対応する文字列を検出する。
【００４３】
判定部１５ｅは、Ｗｅｂページのデータが特定の条件を満たすか否かを判定する処理部である。
【００４４】
一実施形態として、判定部１５ｅは、解析部１５ｄによりＷｅｂページが解析された場合、当該Ｗｅｂページに含まれるテキストの中から確定キーワードに対応する文字列が検出されたか否かを判定する。ここで、Ｗｅｂページに確定キーワードが含まれる場合、当該Ｗｅｂページが目的サイトに該当する可能性が高いと識別できる。この場合、判定部１５ｅは、当該Ｗｅｂページのデータ、例えばＨＴＭＬ文書のソースコード、ＨＴＭＬ文書に埋め込まれた画像や動画のバイナリデータなどをコンテンツデータ１３ｂとして記憶部１３へ保存する。
【００４５】
決定部１５ｆは、Ｗｅｂページに含まれる特定の文字列とＵＲＬとの距離に応じて、探索の対象とするＷｅｂページの階層を決定する処理部である。
【００４６】
一実施形態として、決定部１５ｆは、解析部１５ｄによりＷｅｂページが解析された場合、当該Ｗｅｂページに含まれるテキストの中から探索キーワードに対応する文字列が検出されたか否かを判定する。ここで、Ｗｅｂページに探索キーワードが含まれる場合、目的サイトそのもの、あるいは目的サイトに関するトピックが出現しているＷｅｂサイトである可能性が高いので、当該Ｗｅｂページ内のリンクを辿って探索を継続する価値があると識別できる。この場合、決定部１５ｆは、当該Ｗｅｂページに含まれるテキストの中からＵＲＬのリンクに対応する文字列が検出されたか否かをさらに判定する。そして、決定部１５ｆは、Ｗｅｂページにリンクが含まれる場合、当該リンクとして埋め込まれたＵＲＬを記憶部１３に記憶された探索リストデータ１３ｃに追加登録する。このように探索に用いられるＵＲＬのことを「探索ＵＲＬ」と記載する場合がある。続いて、決定部１５ｆは、探索ＵＲＬごとに当該探索ＵＲＬとその最短の位置にある探索キーワードとの間で距離、例えば文字数などを算出する。なお、Ｗｅｂページに探索キーワードが含まれない場合、当該ＷｅｂページにＵＲＬのリンクを探索しても目的サイトとの関連が希薄なＷｅｂページしか探索されない可能性が高まるので、以降の探索は打ち切られる。また、ＷｅｂページにＵＲＬのリンクが含まれない場合、リンクを探索することができないので、探索が打ち切られる。
【００４７】
このように探索キーワード及びＵＲＬの距離が算出された後、決定部１５ｆは、探索キーワード及び探索ＵＲＬの距離に応じて、当該探索ＵＲＬのリンクから追加で探索する階層を決定する。ここで言う「階層」は、一例として、リンクのＵＲＬが探索された回数に対応する。以下、探索ＵＲＬのリンクから追加で探索する階層のことを「追加探索階層」と記載する場合がある。これに関連して、起点サイトから受付部１５ｃが受け付けた最新のＷｅｂページまでにリンクが探索されることにより到達した階層のことを「到達階層」と記載する場合がある。
【００４８】
例えば、決定部１５ｆは、探索キーワード及び探索ＵＲＬの距離が小さくなるにつれて追加探索階層を多く設定する一方で、探索キーワード及び探索ＵＲＬの距離が大きくなるにつれて追加探索階層を少なく設定する。より具体的には、決定部１５ｆは、探索キーワード及び探索ＵＲＬの距離が閾値Ｔｈ１、例えば１００文字以下であるか否かを判定する。そして、決定部１５ｆは、探索キーワード及び探索ＵＲＬの距離が閾値Ｔｈ１以下でない場合、探索キーワード及び探索ＵＲＬの距離が閾値Ｔｈ２、例えば２００文字以下であるか否かを判定する。さらに、決定部１５ｆは、探索キーワード及び探索ＵＲＬの距離が閾値Ｔｈ２以下でない場合、探索キーワード及び探索ＵＲＬの距離が閾値Ｔｈ３、例えば３００文字以下であるか否かを判定する。これら閾値Ｔｈ１〜閾値Ｔｈ３を用いる判定によって、探索キーワード及び探索ＵＲＬの距離は、（イ）閾値Ｔｈ１以下、（ロ）閾値Ｔｈ１超過閾値Ｔｈ２以下、（ハ）閾値Ｔｈ２超過閾値Ｔｈ３以下、（ニ）閾値Ｔｈ３超過の４つのパターンへ分類できる。
【００４９】
これら４つのパターンのうち、パターン（イ）に該当する場合、すなわち距離が閾値Ｔｈ１以下である場合、決定部１５ｆは、当該探索ＵＲＬから追加で探索する階層を「３」に決定する。また、パターン（ロ）に該当する場合、すなわち距離が閾値Ｔｈ１超過閾値Ｔｈ２以下である場合、決定部１５ｆは、当該探索ＵＲＬから追加で探索する階層を「２」に決定する。また、パターン（ハ）に該当する場合、すなわち距離が閾値Ｔｈ２超過閾値Ｔｈ３以下である場合、決定部１５ｆは、当該探索ＵＲＬから追加で探索する階層を「１」に決定する。また、パターン（ニ）に該当する場合、すなわち距離が閾値Ｔｈ３超過である場合、決定部１５ｆは、探索ＵＲＬのリンクから追加で探索する階層を「０」に決定する。
【００５０】
図３は、Ｗｅｂページの一例を示す図である。図３には、探索キーワードＫＹ１の一例として「自己責任」が含まれると共に、それに後続してＵＲＬ３１、ＵＲＬ３２、ＵＲＬ３３及びＵＲＬ３４が出現するＷｅｂページ３００が示されている。さらに、図３には、探索キーワードＫＹ１及びＵＲＬ３１の距離ｄ１が閾値Ｔｈ１以内であり、探索キーワードＫＹ１及びＵＲＬ３２の距離ｄ２が閾値Ｔｈ１超過、かつ閾値Ｔｈ２以内であり、探索キーワードＫＹ１及びＵＲＬ３３の距離ｄ３が閾値Ｔｈ２超過、かつ閾値Ｔｈ３以内であり、探索キーワードＫＹ１及びＵＲＬ３４の距離ｄ４が閾値Ｔｈ３を超過する例が示されている。
【００５１】
図３に示すように、探索キーワードＫＹ１にＵＲＬが後続する場合、一例として、次のようにして両者の距離を算出する。例えば、探索キーワードＫＹ１およびＵＲＬ３１の距離ｄ１を算出する場合、Ｗｅｂページ３００上で出現する探索キーワードＫＹ１「自己責任」の文字列のうち最後の文字の位置Ｅ１から、ＵＲＬ３１に対応する文字列のうち先頭の文字の位置Ｓ１までの文字数が距離ｄ１として算出される。このように距離ｄ１が上記のパターン（イ）に該当する場合、探索キーワードＫＹ１およびＵＲＬ３１の関連度が高いと推定できる。この場合、現時点の到達階層に留まらず、そこから３つ先の階層まで追加してリンクを探索することを許可する。
【００５２】
また、探索キーワードＫＹ１およびＵＲＬ３２の距離ｄ２を算出する場合、Ｗｅｂページ３００上で出現する探索キーワードＫＹ１「自己責任」の文字列のうち最後の文字の位置Ｅ１から、ＵＲＬ３２に対応する文字列のうち先頭の文字の位置Ｓ２までの文字数が距離ｄ２として算出される。このように距離ｄ２が上記のパターン（ロ）に該当する場合、探索キーワードＫＹ１およびＵＲＬ３２の関連度が上記のパターン（イ）に次いで高いと推定できる。この場合、現時点の到達階層に留まらず、そこから２つ先の階層まで追加してリンクを探索することを許可する。
【００５３】
また、探索キーワードＫＹ１およびＵＲＬ３３の距離ｄ３を算出する場合、Ｗｅｂページ３００上で出現する探索キーワードＫＹ１「自己責任」の文字列のうち最後の文字の位置Ｅ１から、ＵＲＬ３３に対応する文字列のうち先頭の文字の位置Ｓ３までの文字数が距離ｄ３として算出される。このように距離ｄ３が上記のパターン（ハ）に該当する場合、探索キーワードＫＹ１およびＵＲＬ３３の関連度が上記のパターン（ロ）に次いで高いと推定できる。この場合、現時点の到達階層から１つ先の階層まで追加してリンクを探索することを許可する。
【００５４】
また、探索キーワードＫＹ１およびＵＲＬ３４の距離ｄ４を算出する場合、Ｗｅｂページ３００上で出現する探索キーワードＫＹ１「自己責任」の文字列のうち最後の文字の位置Ｅ１から、ＵＲＬ３４に対応する文字列のうち先頭の文字の位置Ｓ４までの文字数が距離ｄ４として算出される。このように距離ｄ４が上記のパターン（ニ）に該当する場合、探索キーワードＫＹ１およびＵＲＬ３３の関連度が上記のパターン（イ）〜上記のパターン（ハ）までは高くないと推定できる。この場合、現時点の到達階層から追加してリンクを探索することは許可しない。
【００５５】
なお、図３には、探索キーワードおよびＵＲＬの距離の一例として、両者の間に存在する文字数を算出する例を示したが、この他にも、両者の間に存在する文字列のデータ量、例えばＢｙｔｅ数などを距離として算出することもできる。また、図３には、探索キーワードに後続してＵＲＬが出現する場合を例示したが、ＵＲＬが探索キーワードに先行する場合には、一例として、ＵＲＬ３２に対応する文字列のうち最後の文字の位置から、探索キーワードの文字列のうち先頭の文字の位置までの文字数を距離として算出することができる。
【００５６】
このように決定された追加探索階層と到達階層から、決定部１５ｆは、リンクの探索の終了を予定する階層を算出する。以下、リンクの探索の終了を予定する階層のことを「終了予定階層」と記載する場合がある。ここで、決定部１５ｆは、一例として、到達階層に追加探索階層を加算することにより上記の終了予定階層を算出するが、探索設定データ１３ａに含まれる探索上限階層を超える値を終了予定階層として認めない。すなわち、決定部１５ｆは、到達階層および追加探索階層の加算値が探索上限階層を超える場合、終了予定階層を探索上限階層と同値に設定する。その後、決定部１５ｆは、探索リストデータ１３ｃに追加された探索ＵＲＬに対応付けて、現時点における到達階層および終了予定階層を登録する。このとき、探索ＵＲＬの終了予定階層が１つ前の探索ＵＲＬの終了予定階層よりも小さい場合、１つ前の探索ＵＲＬの終了予定階層を当該探索ＵＲＬの終了予定階層として引き継ぐことができる。また、パターン（ニ）に該当する場合、すなわち距離が閾値Ｔｈ３超過である場合、１つ前の探索ＵＲＬの終了予定階層が当該探索ＵＲＬの終了予定階層として自動的に引き継がれる。この場合、探索リストデータ１３ｃに追加された探索ＵＲＬには、１つ前の探索ＵＲＬの終了予定階層および到達階層が対応付けて登録される。
【００５７】
その後、決定部１５ｆは、到達階層が探索ＵＲＬの終了予定階層未満、すなわち「到達階層＜終了予定階層」であるか否かを判定する。このとき、到達階層＜終了予定階層である場合、決定部１５ｆは、到達階層が探索設定データ１３ａに含まれる探索上限階層未満、すなわち「到達階層＜探索上限階層」であるか否かを判定する。そして、「到達階層＜終了予定階層」かつ「到達階層＜探索上限階層」である場合、当該探索ＵＲＬについて到達階層よりも先の階層を探索する余地があることが判明する。一方、「到達階層＝終了予定階層」または「到達階層＝探索上限階層」である場合、当該探索ＵＲＬについて到達階層よりも先の階層を探索する余地がないことが判明する。この場合、当該探索ＵＲＬには探索の継続を禁止するフラグが設定される。
【００５８】
このようにＷｅｂページ内にリンクとして埋め込まれた探索ＵＲＬごとに、当該探索ＵＲＬと探索キーワードの距離に応じて探索ＵＲＬの終了予定階層を設定した上で探索ＵＲＬごとに到達階層および終了予定階層が対応付けられたデータのエントリを探索リストデータ１３ｃに追加登録する。その後、Ｗｅｂページ内に探索キーワードおよび探索ＵＲＬが含まれることを探索継続の条件として、到達階層が終了予定階層または探索上限階層のいずれかと等しくなるまで、探索リストデータ１３ｃに含まれる探索ＵＲＬ、すなわち未探索であり、かつ探索継続が禁止されていない探索ＵＲＬに基づいてＷｅｂページのリクエストを発行することにより、Ｗｅｂページの取得を繰り返す。これによって、目的サイトと関連が深いＷｅｂページを到達階層が終了予定階層または探索上限階層になるまで探索することができる。さらに、Ｗｅｂページの中でも確定キーワードを含むＷｅｂページのデータをコンテンツデータ１３ｂとして保存することで、目的サイトと同定されたＷｅｂページを蓄積できる。
【００５９】
このようにコンテンツデータ１３ｂとして保存されたＷｅｂページは、管理者端末２０に公開することができる。例えば、コンテンツデータ１３ｂに含まれるＷｅｂページのデータがインデックス化された索引データを用いて、管理者端末２０により指定された検索キーワードにヒットするＷｅｂページのデータを出力することができる。この他、探索リストデータ１３ｃに含まれる探索ＵＲＬがリスト化された探索リストを管理者端末２０に出力することもできる。
【００６０】
［探索例］
図４は、Ｗｅｂページの探索方法の一例を示す図である。図４には、起点ＵＲＬとして「ＵＲＬ０」が設定されると共に探索上限階層が「１０」に設定された探索設定データ１３ａにしたがって起点サイトからリンクの探索を介して終了するまでの過程が模式化して示されている。図４に示すように、ＵＲＬ０で指定されたＷｅｂページ４００を起点として探索が開始される。すなわち、ＵＲＬ０が指定されたＨＴＴＰリクエストを送信することにより、そのレスポンスとしてＷｅｂページ４００が収集される。このＷｅｂページ４００には、確定キーワードは含まれないので、保存は行われない。一方、Ｗｅｂページ４００には、探索キーワードが含まれると共に、ＵＲＬ１及びＵＲＬ２が含まれる。
【００６１】
このうち、探索キーワードとＵＲＬ１の距離は閾値Ｔｈ１以下である。この場合、追加探索階層には「３」が設定されるので、終了予定階層は到達階層「０」および追加探索階層「３」の合計により「３」と求まる。この結果、探索リストデータ１３ｃには、探索ＵＲＬ「ＵＲＬ１」に到達階層「０」および終了予定階層「３」が対応付けられたデータのエントリが追加される。また、探索キーワードとＵＲＬ２の距離は閾値Ｔｈ２以下である。この場合、追加探索階層には「２」が設定されるので、終了予定階層は到達階層「０」および追加探索階層「２」の合計により「２」と求まる。この結果、探索リストデータ１３ｃには、探索ＵＲＬ「ＵＲＬ２」に到達階層「０」および終了予定階層「２」が対応付けられたデータのエントリが追加される。
【００６２】
このように探索リストデータ１３ｃに追加されたエントリのうち、探索ＵＲＬ「ＵＲＬ１」のエントリが選択された場合、ＵＲＬ１が指定されたＨＴＴＰリクエストを送信することにより、そのレスポンスとしてＷｅｂページ４０１が収集される。このＷｅｂページ４０１には、確定キーワードは含まれないので、保存は行われない。一方、Ｗｅｂページ４０１には、探索キーワードが含まれると共に、ＵＲＬ３及びＵＲＬ４が含まれる。
【００６３】
このうち、探索キーワードとＵＲＬ３の距離は閾値Ｔｈ３以下である。この場合、追加探索階層には「１」が設定される。この場合、終了予定階層は到達階層「１」および追加探索階層「１」の合計により「２」と求まるが、１つ前のＵＲＬ１の終了予定階層「３」の方が大きいので、ＵＲＬ３の終了予定階層には、１つ前のＵＲＬ１の終了予定階層「３」が引き継がれる。この結果、探索リストデータ１３ｃには、探索ＵＲＬ「ＵＲＬ３」に到達階層「１」および終了予定階層「３」が対応付けられたデータのエントリが追加される。また、探索キーワードとＵＲＬ４の距離は閾値Ｔｈ１以下である。この場合、追加探索階層には「３」が設定されるので、終了予定階層は到達階層「１」および追加探索階層「３」の合計により「４」と求まる。この結果、探索リストデータ１３ｃには、探索ＵＲＬ「ＵＲＬ４」に到達階層「１」および終了予定階層「４」が対応付けられたデータのエントリが追加される。
【００６４】
このように探索リストデータ１３ｃに追加されたエントリのうち、探索ＵＲＬ「ＵＲＬ３」のエントリが選択された場合、ＵＲＬ３が指定されたＨＴＴＰリクエストを送信することにより、そのレスポンスとしてＷｅｂページ４０３が収集される。このＷｅｂページ４０３には、確定キーワードは含まれないので、保存は行われない。一方、Ｗｅｂページ４０３には、探索キーワードが含まれると共に、ＵＲＬ７が含まれる。そして、探索キーワードとＵＲＬ７の距離は閾値Ｔｈ３を超える。この場合、追加探索階層には「０」が設定される。この場合、ＵＲＬ７の終了予定階層には、１つ前のＵＲＬ３の終了予定階層「３」が引き継がれる。この結果、探索リストデータ１３ｃには、探索ＵＲＬ「ＵＲＬ７」に到達階層「２」および終了予定階層「３」が対応付けられたデータのエントリが追加される。
【００６５】
続いて、探索リストデータ１３ｃに追加された探索ＵＲＬ「ＵＲＬ７」のエントリが選択された場合、ＵＲＬ７が指定されたＨＴＴＰリクエストを送信することにより、そのレスポンスとしてＷｅｂページ４０７が収集される。このＷｅｂページ４０７には、確定キーワードは含まれないので、保存は行われない。さらに、Ｗｅｂページ４０７には、探索キーワードも含まれない。したがって、Ｗｅｂページ４０７よりも下位にあるＷｅｂページの探索は行われず、Ｗｅｂページ４０７よりも下位のＷｅｂページの探索は打ち切られる。
【００６６】
また、探索リストデータ１３ｃに追加されたエントリのうち、探索ＵＲＬ「ＵＲＬ４」のエントリが選択された場合、ＵＲＬ４が指定されたＨＴＴＰリクエストを送信することにより、そのレスポンスとしてＷｅｂページ４０４が収集される。このＷｅｂページ４０４には、確定キーワードは含まれないので、保存は行われない。一方、Ｗｅｂページ４０４には、探索キーワードが含まれると共に、ＵＲＬ８が含まれる。そして、探索キーワードとＵＲＬ８の距離は閾値Ｔｈ２以下である。この場合、追加探索階層には「２」が設定されるので、終了予定階層は到達階層「２」および追加探索階層「２」の合計により「４」と求まる。この結果、探索リストデータ１３ｃには、探索ＵＲＬ「ＵＲＬ８」に到達階層「２」および終了予定階層「４」が対応付けられたデータのエントリが追加される。
【００６７】
このように探索リストデータ１３ｃに追加された探索ＵＲＬ「ＵＲＬ８」のエントリにしたがってＷｅｂページ４０４よりも下位にあるＷｅｂページがＷｅｂページ内に探索キーワードおよび探索ＵＲＬが含まれることを探索継続の条件として探索された場合、図４に示すように、到達階層が探索上限階層に達するまでＷｅｂページが収集される。すなわち、ＵＲＬｎが指定されたＨＴＴＰリクエストのレスポンスとしてＷｅｂページ４００ｎが収集された段階で到達階層が探索上限階層「１０」に到達する。このＷｅｂページ４００ｎには、確定キーワードは含まれないので、保存は行われない。一方、Ｗｅｂページ４００ｎには、探索キーワードが含まれると共に、ＵＲＬｎ＋１が含まれる。そして、探索キーワードとＵＲＬｎ＋１の距離は閾値Ｔｈ２以下であるので、追加探索階層には「２」が設定されるが、到達階層が探索上限階層「１０」に到達している。この場合、探索リストデータ１３ｃには、探索ＵＲＬ「ＵＲＬｎ＋１」に到達階層「１０」、終了予定階層「１０」および探索継続を禁止するフラグが対応付けられたデータのエントリが追加される。このフラグによって、Ｗｅｂページ４００ｎよりも下位にあるＷｅｂページの探索は行われず、Ｗｅｂページ４００ｎよりも下位のＷｅｂページの探索は打ち切られる。
【００６８】
一方、探索リストデータ１３ｃに追加されたエントリのうち、探索ＵＲＬ「ＵＲＬ２」のエントリが選択された場合、ＵＲＬ２が指定されたＨＴＴＰリクエストを送信することにより、そのレスポンスとしてＷｅｂページ４０２が収集される。このＷｅｂページ４０２には、確定キーワードが含まれるので、Ｗｅｂページ４０２のデータがコンテンツデータ１３ｂとして保存される。さらに、Ｗｅｂページ４０２には、探索キーワードが含まれると共に、ＵＲＬ５及びＵＲＬ６が含まれる。
【００６９】
このうち、探索キーワードとＵＲＬ５の距離は閾値Ｔｈ１以下である。この場合、追加探索階層には「３」が設定される。この場合、終了予定階層は到達階層「１」および追加探索階層「３」の合計により「４」と求まる。この結果、探索リストデータ１３ｃには、探索ＵＲＬ「ＵＲＬ５」に到達階層「１」および終了予定階層「４」が対応付けられたデータのエントリが追加される。また、探索キーワードとＵＲＬ６の距離は閾値Ｔｈ３を超える。この場合、追加探索階層には「０」が設定されるので、ＵＲＬ６の終了予定階層には、１つ前のＵＲＬ２の終了予定階層「２」が引き継がれる。この結果、探索リストデータ１３ｃには、探索ＵＲＬ「ＵＲＬ６」に到達階層「１」および終了予定階層「２」が対応付けられたデータのエントリが追加される。
【００７０】
このように探索リストデータ１３ｃに追加されたエントリのうち、探索ＵＲＬ「ＵＲＬ５」のエントリが選択された場合、ＵＲＬ５が指定されたＨＴＴＰリクエストを送信することにより、そのレスポンスとしてＷｅｂページ４０５が収集される。このＷｅｂページ４０５には、確定キーワードが含まれるので、Ｗｅｂページ４０５のデータがコンテンツデータ１３ｂとして保存される。さらに、Ｗｅｂページ４０５には、探索キーワードが含まれると共に、ＵＲＬ９が含まれる。そして、探索キーワードとＵＲＬ９の距離は閾値Ｔｈ２以下である。この場合、追加探索階層には「２」が設定されるので、終了予定階層は到達階層「２」および追加探索階層「２」の合計により「４」と求まる。この結果、探索リストデータ１３ｃには、探索ＵＲＬ「ＵＲＬ９」に到達階層「２」および終了予定階層「４」が対応付けられたデータのエントリが追加される。
【００７１】
続いて、探索リストデータ１３ｃに追加された探索ＵＲＬ「ＵＲＬ９」のエントリが選択された場合、ＵＲＬ９が指定されたＨＴＴＰリクエストを送信することにより、そのレスポンスとしてＷｅｂページ４０９が収集される。このＷｅｂページ４０９には、確定キーワードが含まれるので、Ｗｅｂページ４０９のデータがコンテンツデータ１３ｂとして保存される。さらに、Ｗｅｂページ４０９には、探索キーワードも含まれると共に、ＵＲＬ１１が含まれる。そして、探索キーワードとＵＲＬ１１の距離は閾値Ｔｈ１以下である。この場合、追加探索階層には「３」が設定されるので、終了予定階層は到達階層「３」および追加探索階層「３」の合計により「６」と求まる。この結果、探索リストデータ１３ｃには、探索ＵＲＬ「ＵＲＬ１１」に到達階層「３」および終了予定階層「６」が対応付けられたデータのエントリが追加される。
【００７２】
そして、探索リストデータ１３ｃに追加された探索ＵＲＬ「ＵＲＬ１１」のエントリが選択された場合、ＵＲＬ１１が指定されたＨＴＴＰリクエストを送信することにより、そのレスポンスとしてＷｅｂページ４１１が収集される。このＷｅｂページ４１１には、確定キーワードは含まれないので、保存は行われない。さらに、Ｗｅｂページ４１１には、探索キーワードもＵＲＬも含まれない。したがって、Ｗｅｂページ４１１のＵＲＬ１１の終了予定階層は「６」に設定されているものの、Ｗｅｂページ４１１よりも下位にあるＷｅｂページの探索は行われず、Ｗｅｂページ４１１よりも下位のＷｅｂページの探索は打ち切られる。
【００７３】
また、探索リストデータ１３ｃに追加されたエントリのうち、探索ＵＲＬ「ＵＲＬ６」のエントリが選択された場合、ＵＲＬ６が指定されたＨＴＴＰリクエストを送信することにより、そのレスポンスとしてＷｅｂページ４０６が収集される。このＷｅｂページ４０６には、確定キーワードは含まれない。一方、Ｗｅｂページ４０６には、探索キーワードが含まれると共に、ＵＲＬ１０が含まれる。しかしながら、探索キーワードとＵＲＬ１０の距離は閾値Ｔｈ３を超える。この場合、追加探索階層には「０」が設定される。このため、ＵＲＬ１０の終了予定階層には、１つ前のＵＲＬ６の終了予定階層「２」が引き継がれる。この結果、探索リストデータ１３ｃには、探索ＵＲＬ「ＵＲＬ１０」に到達階層「２」、終了予定階層「２」および探索継続を禁止するフラグが対応付けられたデータのエントリが追加される。このフラグによって、Ｗｅｂページ４０６よりも下位にあるＷｅｂページの探索は行われず、Ｗｅｂページ４０６よりも下位のＷｅｂページの探索は打ち切られる。
【００７４】
以上のような探索が実行される結果、目的サイトの一例として、Ｗｅｂページ４０２、Ｗｅｂページ４０５およびＷｅｂページ４０９のデータを保存することができる。さらに、探索リストデータ１３ｃに含まれるＵＲＬ０〜ＵＲＬ１１、ＵＲＬｎおよびＵＲＬｎ＋１をリスト化することにより探索リストとして出力することもできる。
【００７５】
［処理の流れ］
図５及び図６は、実施例１に係る情報取得処理の手順を示すフローチャートである。この処理は、記憶部１３に探索設定データ１３ａが新規に登録された場合、あるいは登録済みの探索設定データ１３ａに含まれるチェック周期が経過する場合などに実行される。なお、処理の開始時には、到達階層の値を保持する到達階層レジスタを初期値、例えば「０」に設定される。
【００７６】
図５に示すように、要求部１５ｂは、記憶部１３に記憶された探索設定データ１３ａに含まれる起点ＵＲＬに基づいてＨＴＴＰリクエストをＷｅｂサーバ３０に送信する（ステップＳ１０１）。続いて、受付部１５ｃは、ステップＳ１０１で送信されたＨＴＴＰリクエストのレスポンスとして、Ｗｅｂサーバ３０から送信されたＷｅｂページのデータを受け付ける（ステップＳ１０２）。そして、解析部１５ｄは、ステップＳ１０２で受け付けたＷｅｂページのテキストマイニング等の解析を実行する（ステップＳ１０３）。
【００７７】
その後、判定部１５ｅは、ステップＳ１０３の結果、ステップＳ１０２で受け付けたＷｅｂページに含まれるテキストの中から確定キーワードに対応する文字列が検出されたか否かを判定する（ステップＳ１０４）。
【００７８】
ここで、Ｗｅｂページに確定キーワードが含まれる場合（ステップＳ１０４Ｙｅｓ）、当該Ｗｅｂページが目的サイトに該当する可能性が高いと識別できる。この場合、判定部１５ｅは、ステップＳ１０２で受け付けたＷｅｂページのデータ、例えばＨＴＭＬ文書のソースコード、ＨＴＭＬ文書に埋め込まれた画像や動画のバイナリデータなどをコンテンツデータ１３ｂとして記憶部１３へ保存する（ステップＳ１０５）。なお、Ｗｅｂページに確定キーワードが含まれない場合（ステップＳ１０４Ｎｏ）、ステップＳ１０５の処理はスキップされる。
【００７９】
そして、決定部１５ｆは、ステップＳ１０３の結果、ステップＳ１０２で受け付けたＷｅｂページに含まれるテキストの中から探索キーワードに対応する文字列が検出されたか否かを判定する（ステップＳ１０６）。
【００８０】
ここで、Ｗｅｂページに探索キーワードが含まれる場合（ステップＳ１０６Ｙｅｓ）、目的サイトそのもの、あるいは目的サイトに関するトピックが出現しているＷｅｂサイトである可能性が高いので、当該Ｗｅｂページ内のリンクを辿って探索を継続する価値があると識別できる。この場合、決定部１５ｆは、ステップＳ１０２で受け付けたＷｅｂページに含まれるテキストの中からＵＲＬのリンクに対応する文字列が検出されたか否かをさらに判定する（ステップＳ１０７）。
【００８１】
なお、Ｗｅｂページに探索キーワードが含まれない場合（ステップＳ１０６Ｎｏ）、当該ＷｅｂページにＵＲＬのリンクを探索しても目的サイトとの関連が希薄なＷｅｂページしか探索されない可能性が高まるので、以降の探索は打ち切られる。また、ＷｅｂページにＵＲＬのリンクが含まれない場合（ステップＳ１０７Ｎｏ）、リンクを探索することができないので、探索が打ち切られる。これらの場合、図６に示すステップＳ１２０の処理へ移行する。
【００８２】
そして、Ｗｅｂページにリンクが含まれる場合（ステップＳ１０７）、決定部１５ｆは、図６に示すように、当該リンクとして埋め込まれたＵＲＬのうち１つのＵＲＬを選択する（ステップＳ１０８）。続いて、決定部１５ｆは、ステップＳ１０８で選択されたＵＲＬを探索ＵＲＬとして記憶部１３に記憶された探索リストデータ１３ｃに追加登録する（ステップＳ１０９）。
【００８３】
その後、決定部１５ｆは、ステップＳ１０８で選択されたＵＲＬとその最短の位置にある探索キーワードとの間で距離、例えば文字数などを算出する（ステップＳ１１０）。続いて、決定部１５ｆは、探索キーワード及び探索ＵＲＬの距離が閾値Ｔｈ３以下であるか否かを判定する（ステップＳ１１１）。
【００８４】
このとき、探索キーワード及び探索ＵＲＬの距離が閾値Ｔｈ３以下である場合（ステップＳ１１１Ｙｅｓ）、決定部１５ｆは、探索キーワード及び探索ＵＲＬの距離に応じて、当該探索ＵＲＬのリンクから追加で探索する追加探索階層を決定する（ステップＳ１１２）。そして、決定部１５ｆは、図示しない到達階層レジスタに格納された到達階層および追加探索階層に基づいてリンクの探索の終了を予定する終了予定階層を算出する（ステップＳ１１３）。
【００８５】
一方、探索キーワード及び探索ＵＲＬの距離が閾値Ｔｈ３以下でない場合（ステップＳ１１１Ｎｏ）、決定部１５ｆは、１つ前の探索ＵＲＬ（起点ＵＲＬを含む）の終了予定階層を当該探索ＵＲＬの終了予定階層として自動的に引き継ぐ（ステップＳ１１４）。
【００８６】
その後、決定部１５ｆは、ステップＳ１０９で探索リストデータ１３ｃに追加された探索ＵＲＬのエントリに、図示しない到達階層レジスタに格納された到達階層と、ステップＳ１１３で算出された終了予定階層またはステップＳ１１４で引き継がれた終了予定階層とを登録する（ステップＳ１１５）。
【００８７】
そして、決定部１５ｆは、到達階層が探索ＵＲＬの終了予定階層または探索上限階層のいずれかに到達したか否か、すなわち「到達階層＝終了予定階層」または「到達階層＝探索上限階層」であるか否かを判定する（ステップＳ１１６およびステップＳ１１７）。
【００８８】
このとき、到達階層が探索ＵＲＬの終了予定階層または探索上限階層のいずれかに到達した場合（ステップＳ１１６ＹｅｓまたはステップＳ１１７Ｙｅｓ）、当該探索ＵＲＬについて到達階層よりも先の階層を探索する余地がないことが判明する。この場合、決定部１５ｆは、当該探索ＵＲＬには探索の継続を禁止するフラグを設定する（ステップＳ１１８）。なお、到達階層が探索ＵＲＬの終了予定階層または探索上限階層のいずれにも到達していない場合（ステップＳ１１６ＮｏかつステップＳ１１７Ｎｏ）、ステップＳ１１８の処理がスキップされる。
【００８９】
その後、Ｗｅｂページにリンクとして埋め込まれた全てのＵＲＬが選択されるまで（ステップＳ１１９Ｎｏ）、上記のステップＳ１０８から上記のステップＳ１１８までの処理を繰り返し実行する。
【００９０】
そして、探索リストデータ１３ｃに探索継続を禁止するフラグが設定されていない未探索の探索ＵＲＬがなくなるまで（ステップＳ１２０Ｙｅｓ）、下記のステップＳ１２１の処理および下記のステップＳ１２２の処理の実行後に、ステップＳ１０２の処理へ移行する。すなわち、要求部１５ｂは、図示しない到達階層レジスタに格納された値を探索リストデータ１３ｃに含まれる未探索の探索ＵＲＬに対応付けられた到達階層の値に上書き更新すると共に、探索リストデータ１３ｃに含まれる未探索の探索ＵＲＬに基づいてＨＴＴＰリクエストをＷｅｂサーバ３０に送信する（ステップＳ１２１）。その上で、要求部１５ｂは、図示しない到達階層レジスタに格納された到達階層を１つインクリメントする（ステップＳ１２２）。その後、ステップＳ１０２の処理へ移行し、ステップＳ１０２からステップＳ１１９までの処理を繰り返し実行する。
【００９１】
その後、探索リストデータ１３ｃに探索継続を禁止するフラグが設定されていない未探索の探索ＵＲＬがなくなった場合（ステップＳ１２０Ｎｏ）、処理を終了する。
【００９２】
［効果の一側面］
上述してきたように、本実施例に係る情報取得装置１０は、Ｗｅｂページに目的サイトを絞り込むキーワードの文字列とＵＲＬのリンクが含まれる場合、両者の距離に応じて当該ＵＲＬのリンクから追加で探索する階層を決定する。このため、例えば、キーワードとＵＲＬの距離が近い場合、Ｗｅｂページ内のリンクの探索を継続する一方で、キーワードとＵＲＬの距離が遠い場合、Ｗｅｂページ内のリンクの探索を打ち切ることができる。それ故、Ｗｅｂページ内のリンクが目的サイトに該当する可能性が高い場合に探索を継続する一方で、Ｗｅｂページ内のリンクが目的サイトに該当する可能性が低い場合に探索を打ち切ることができる。したがって、本実施例に係る情報取得装置１０によれば、目的サイトの収集漏れを抑制することが可能になる。さらに、本実施例に係る情報取得装置１０によれば、目的外のサイトが収集されるのを抑制できるので、収集データ量が増大するのも抑制することが可能になる。
【実施例２】
【００９３】
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。
【００９４】
［ユースケースの具体例］
例えば、上記の実施例１に係る情報取得装置１０は、違法サイトや有害サイトを収集したり、その探索ＵＲＬがリスト化された探索リストを生成したりする場合に適用することができる。一例として、違法薬物を販売するサイトの情報を取得する場合、起点サイトとして各種の掲示板サイトのトップページを設定することができる。さらに、探索キーワードには、「自己責任」、「販売サイト」および「受け渡し手続」のうち少なくともいずれか１つもしくは組合せを設定することができる。また、確定キーワードには、「麻薬」や「ドラッグ」などの単語の他、「アイス」や「野菜」などの隠語を設定することができる。また、偽造身分証明書を販売するサイトの情報を取得する場合、起点サイトとして各種の掲示板サイトのトップページを設定することができる。さらに、探索キーワードには、「自己責任」、「口座」および「扱って」のうち少なくともいずれか１つもしくは組合せを設定することができる。また、確定キーワードには、偽造などの単語を設定することができる。
【００９５】
［探索キーワード］
上記の実施例１では、Ｗｅｂページに探索キーワードが含まれることをリンクの探索を継続する条件とする場合を例示したが、探索キーワードの範囲を拡張することもできる。例えば、確定キーワードを探索キーワードとしても設定し、探索キーワードまたは確定キーワードのいずれかがＷｅｂページに含まれる場合、リンクの探索を継続することもできる。この場合、ＵＲＬとの間で距離を算出するキーワードは、当該ＵＲＬから最寄りの探索キーワードまたは確定キーワードのいずれかを用いることができる。
【００９６】
［分散および統合］
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されておらずともよい。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、設定部１５ａ、要求部１５ｂ、受付部１５ｃ、解析部１５ｄ、判定部１５ｅまたは決定部１５ｆを情報取得装置１０の外部装置としてネットワーク経由で接続するようにしてもよい。また、設定部１５ａ、要求部１５ｂ、受付部１５ｃ、解析部１５ｄ、判定部１５ｅまたは決定部１５ｆを別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記の情報取得装置１０の機能を実現するようにしてもよい。また、記憶部に記憶される探索設定データ１３ａ、コンテンツデータ１３ｂまたは探索リストデータ１３ｃの全部または一部を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記の情報取得装置１０の機能を実現するようにしてもかまわない。
【００９７】
［情報取得プログラム］
また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図７を用いて、上記の実施例と同様の機能を有する情報取得プログラムを実行するコンピュータの一例について説明する。
【００９８】
図７は、実施例１及び実施例２に係る情報取得プログラムを実行するコンピュータのハードウェア構成例を示す図である。図７に示すように、コンピュータ１００は、操作部１１０ａと、スピーカ１１０ｂと、カメラ１１０ｃと、ディスプレイ１２０と、通信部１３０とを有する。さらに、このコンピュータ１００は、ＣＰＵ１５０と、ＲＯＭ１６０と、ＨＤＤ１７０と、ＲＡＭ１８０とを有する。これら１１０〜１８０の各部はバス１４０を介して接続される。
【００９９】
ＨＤＤ１７０には、図７に示すように、上記の実施例１で示した設定部１５ａ、要求部１５ｂ、受付部１５ｃ、解析部１５ｄ、判定部１５ｅ及び決定部１５ｆと同様の機能を発揮する情報取得プログラム１７０ａが記憶される。この情報取得プログラム１７０ａは、図１に示した設定部１５ａ、要求部１５ｂ、受付部１５ｃ、解析部１５ｄ、判定部１５ｅ及び決定部１５ｆの各構成要素と同様、統合又は分離してもかまわない。すなわち、ＨＤＤ１７０には、必ずしも上記の実施例１で示した全てのデータが格納されずともよく、処理に用いるデータがＨＤＤ１７０に格納されればよい。
【０１００】
このような環境の下、ＣＰＵ１５０は、ＨＤＤ１７０から情報取得プログラム１７０ａを読み出した上でＲＡＭ１８０へ展開する。この結果、情報取得プログラム１７０ａは、図７に示すように、情報取得プロセス１８０ａとして機能する。この情報取得プロセス１８０ａは、ＲＡＭ１８０が有する記憶領域のうち情報取得プロセス１８０ａに割り当てられた領域にＨＤＤ１７０から読み出した各種データを展開し、この展開した各種データを用いて各種の処理を実行する。例えば、情報取得プロセス１８０ａが実行する処理の一例として、図５及び図６に示す処理などが含まれる。なお、ＣＰＵ１５０では、必ずしも上記の実施例１で示した全ての処理部が動作せずともよく、実行対象とする処理に対応する処理部が仮想的に実現されればよい。
【０１０１】
なお、上記の情報取得プログラム１７０ａは、必ずしも最初からＨＤＤ１７０やＲＯＭ１６０に記憶されておらずともかまわない。例えば、コンピュータ１００に挿入されるフレキシブルディスク、いわゆるＦＤ、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に情報取得プログラム１７０ａを記憶させる。そして、コンピュータ１００がこれらの可搬用の物理媒体から情報取得プログラム１７０ａを取得して実行するようにしてもよい。また、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ１００に接続される他のコンピュータまたはサーバ装置などに情報取得プログラム１７０ａを記憶させておき、コンピュータ１００がこれらから情報取得プログラム１７０ａを取得して実行するようにしてもよい。
【０１０２】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１０３】
（付記１）Ｗｅｂページのデータを受け付け、
受け付けた前記データに特定の文字列とＵＲＬが含まれる場合、前記文字列と前記ＵＲＬの距離に応じて、探索の対象とするＷｅｂページの階層を決定し、
決定した前記階層に応じたＷｅｂページのデータが特定の条件を満たすか否かを判定する、
処理をコンピュータに実行させることを特徴とする情報取得プログラム。
【０１０４】
（付記２）前記決定する処理は、前記文字列と前記ＵＲＬの距離が近くなるにしたがって前記探索の対象とするＷｅｂページの階層を深く決定することを特徴とする付記１に記載の情報取得プログラム。
【０１０５】
（付記３）前記決定する処理は、前記文字列と前記ＵＲＬの距離が遠くなるにしたがって前記探索の対象とするＷｅｂページの階層を浅く決定することを特徴とする付記１に記載の情報取得プログラム。
【０１０６】
（付記４）前記判定する処理は、決定した前記階層に応じたＷｅｂページのデータに前記特定の文字列とは異なる所定の文字列が含まれる否かを判定することを特徴とする付記１に記載の情報取得プログラム。
【０１０７】
（付記５）前記距離は、前記文字列と前記ＵＲＬの間に存在する文字の数、または、前記文字列と前記ＵＲＬの間に存在する文字のデータ量であることを特徴とする付記１に記載の情報取得プログラム。
【０１０８】
（付記６）Ｗｅｂページのデータを受け付け、
受け付けた前記データに特定の文字列とＵＲＬが含まれる場合、前記文字列と前記ＵＲＬの距離に応じて、探索の対象とするＷｅｂページの階層を決定し、
決定した前記階層に応じたＷｅｂページのデータが特定の条件を満たすか否かを判定する、
処理をコンピュータが実行することを特徴とする情報取得方法。
【０１０９】
（付記７）前記決定する処理は、前記文字列と前記ＵＲＬの距離が近くなるにしたがって前記探索の対象とするＷｅｂページの階層を深く決定することを特徴とする付記６に記載の情報取得方法。
【０１１０】
（付記８）前記決定する処理は、前記文字列と前記ＵＲＬの距離が遠くなるにしたがって前記探索の対象とするＷｅｂページの階層を浅く決定することを特徴とする付記６に記載の情報取得方法。
【０１１１】
（付記９）前記判定する処理は、決定した前記階層に応じたＷｅｂページのデータに前記特定の文字列とは異なる所定の文字列が含まれる否かを判定することを特徴とする付記６に記載の情報取得方法。
【０１１２】
（付記１０）前記距離は、前記文字列と前記ＵＲＬの間に存在する文字の数、または、前記文字列と前記ＵＲＬの間に存在する文字のデータ量であることを特徴とする付記６に記載の情報取得方法。
【０１１３】
（付記１１）Ｗｅｂページのデータを受け付ける受付部と、
受け付けた前記データに特定の文字列とＵＲＬが含まれる場合、前記文字列と前記ＵＲＬの距離に応じて、探索の対象とするＷｅｂページの階層を決定する決定部と、
決定した前記階層に応じたＷｅｂページのデータが特定の条件を満たすか否かを判定する判定部と、
を有することを特徴とする情報取得装置。
【０１１４】
（付記１２）前記決定部は、前記文字列と前記ＵＲＬの距離が近くなるにしたがって前記探索の対象とするＷｅｂページの階層を深く決定することを特徴とする付記１１に記載の情報取得装置。
【０１１５】
（付記１３）前記決定部は、前記文字列と前記ＵＲＬの距離が遠くなるにしたがって前記探索の対象とするＷｅｂページの階層を浅く決定することを特徴とする付記１１に記載の情報取得装置。
【０１１６】
（付記１４）前記判定部は、決定した前記階層に応じたＷｅｂページのデータに前記特定の文字列とは異なる所定の文字列が含まれる否かを判定することを特徴とする付記１１に記載の情報取得装置。
【０１１７】
（付記１５）前記距離は、前記文字列と前記ＵＲＬの間に存在する文字の数、または、前記文字列と前記ＵＲＬの間に存在する文字のデータ量であることを特徴とする付記１１に記載の情報取得装置。
【符号の説明】
【０１１８】
１    情報取得システム
１０    情報取得装置
１１    通信Ｉ／Ｆ部
１３    記憶部
１３ａ  探索設定データ
１３ｂ  コンテンツデータ
１３ｃ  探索リストデータ
１５    制御部
１５ａ  設定部
１５ｂ  要求部
１５ｃ  受付部
１５ｄ  解析部
１５ｅ  判定部
１５ｆ  決定部
２０    管理者端末
３０    Ｗｅｂサーバ
【図１】
2019144823.tif 000003
【図２】
2019144823.tif 000004
【図３】
2019144823.tif 000005
【図４】
2019144823.tif 000006
【図５】
2019144823.tif 000007
【図６】
2019144823.tif 000008
【図７】
2019144823.tif 000009