(57)【要約】【課題】複数のＷｅｂサイトへの入り口を提供するポータルサイトにおいて、前記複数のＷｅｂサイトを対象とした検索を、ユーザーの前記複数のＷｅｂページそれぞれに対するアクセス権に応じて行う情報処理装置を提供する。【解決手段】情報処理装置の記憶手段は、複数のＷｅｂサイトのそれぞれに対して、ユーザーのアクセス権に基づいてアクセスし、該複数のＷｅｂサイトに記載されている内容のインデックスを該ユーザーと対応づけて記憶し、制御手段は、前記複数のＷｅｂサイトへの入り口を表現したポータルサイトを表示するよう制御し、受付手段は、前記ポータルサイトにおいて、前記複数のＷｅｂサイトに対する検索条件の入力を前記ユーザーから受け付け、検索手段は、前記記憶手段に記憶された、前記ユーザーに対応づけられたインデックスに対して、前記入力された検索条件に基づいた検索を行う。【選択図】図１
2017016446.tif 000002
【特許請求の範囲】
【請求項１】
複数のＷｅｂサイトと、該複数のＷｅｂサイトに対するユーザーのアクセス権とを対応づけて記憶する第一の記憶手段と、
前記複数のＷｅｂサイトのそれぞれに対して、前記ユーザーのアクセス権に基づいてアクセスし、該複数のＷｅｂサイトに記載されている内容のインデックスを生成するインデキシング手段と、
前記インデキシング手段により生成されたインデックスを前記ユーザーと対応づけて記憶する第二の記憶手段と、
前記複数のＷｅｂサイトへの入り口を表現したポータルサイトを表示するよう制御する制御手段と、
前記ポータルサイトにおいて、前記複数のＷｅｂサイトに対する検索条件の入力を前記ユーザーから受け付ける受付手段と、
前記第二の記憶手段に記憶された、前記ユーザーに対応づけられたインデックスに対して、前記入力された検索条件に基づいた検索を行う検索手段と、
を有する情報処理装置。
【請求項２】
ユーザーが入力した検索条件を履歴として記憶する第三の記憶手段と、
前記第二の記憶手段に記憶されている情報に対して、前記履歴に基づいて前記ユーザーのインデックスを並び替える並替手段
をさらに有する請求項１に記載の情報処理装置。
【請求項３】
複数のＷｅｂサイトのそれぞれに対して、ユーザーのアクセス権に基づいてアクセスし、該複数のＷｅｂサイトに記載されている内容のインデックスを該ユーザーと対応づけて記憶する記憶手段と、
前記複数のＷｅｂサイトへの入り口を表現したポータルサイトを表示するよう制御する制御手段と、
前記ポータルサイトにおいて、前記複数のＷｅｂサイトに対する検索条件の入力を前記ユーザーから受け付ける受付手段と、
前記記憶手段に記憶された、前記ユーザーに対応づけられたインデックスに対して、前記入力された検索条件に基づいた検索を行う検索手段と、
を有する情報処理装置。
【請求項４】
コンピュータを、
複数のＷｅｂサイトと、該複数のＷｅｂサイトに対するユーザーのアクセス権とを対応づけて記憶する第一の記憶手段と、
前記複数のＷｅｂサイトのそれぞれに対して、前記ユーザーのアクセス権に基づいてアクセスし、該複数のＷｅｂサイトに記載されている内容のインデックスを生成するインデキシング手段と、
前記インデキシング手段により生成されたインデックスを前記ユーザーと対応づけて記憶する第二の記憶手段と、
前記複数のＷｅｂサイトへの入り口を表現したポータルサイトを表示するよう制御する制御手段と、
前記ポータルサイトにおいて、前記複数のＷｅｂサイトに対する検索条件の入力を前記ユーザーから受け付ける受付手段と、
前記第二の記憶手段に記憶された、前記ユーザーに対応づけられたインデックスに対して、前記入力された検索条件に基づいた検索を行う検索手段
として機能させるための情報処理プログラム。
【請求項５】
コンピュータを、
複数のＷｅｂサイトのそれぞれに対して、ユーザーのアクセス権に基づいてアクセスし、該複数のＷｅｂサイトに記載されている内容のインデックスを該ユーザーと対応づけて記憶する記憶手段と、
前記複数のＷｅｂサイトへの入り口を表現したポータルサイトを表示するよう制御する制御手段と、
前記ポータルサイトにおいて、前記複数のＷｅｂサイトに対する検索条件の入力を前記ユーザーから受け付ける受付手段と、
前記記憶手段に記憶された、前記ユーザーに対応づけられたインデックスに対して、前記入力された検索条件に基づいた検索を行う検索手段
として機能させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び情報処理プログラムに関する。
【背景技術】
【０００２】
特許文献１には、ポータルサイトを起点とした情報検索において、利用者が目的を達成するために必要な情報を素早く簡単に入手できるように支援することを課題とし、ブラウザを実装するとともに、キーワード照会書式情報と、検索結果文書書式情報とを記憶したコンピュータにインストールされるプログラムであって、コンピュータに、検索キーワードを受け付けるステップと、検索キーワードをキーワード照会書式情報に基づく手順にしたがって所定のポータルサイトが提供する複数のサービスのそれぞれの検索エンジンに個別に与えるステップと、検索エンジンから返送されてくる検索結果文書を取得するステップと、検索結果文書に記載されているレコード件数を検索結果文書書式情報に基づいて取得するステップと、取得したレコード件数と検索結果文書を個別に表示させるための機能とを含んだ画面を表示するステップとを実行させることが開示されている。
【０００３】
特許文献２には、クライアントが、あるポータルサイトへの接続を試みた場合に、要求したポータルサイトにアクセス権限があるデータのみをデータセンタから蓄積場所を取得することで、クライアントに対して表示させることが可能なＷｅｂコンテンツ配信方法を提供することを課題とし、クライアントが事業者ポータルサイトに接続すると、事業者毎に付与された事業者ＩＤに基づいて、データセンタに対して、クライアントから要求のあったページ記述ファイルを構成する個々のデータについて、蓄積場所の問い合わせを行い、アクセス権限がある場合に、事業者ポータルサイトを経由して、クライアントにデータの蓄積場所を通知し、事業者ポータルサイトにおいて、クライアントから要求のあったデータについて、コンピュータネットワークを経由して、データセンタからアクセス権限のあるデータを取得して、クライアントに配信することが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−０１５６１１号公報
【特許文献２】特開２００２−００７３４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、複数のＷｅｂサイトへの入り口を提供するポータルサイトにおいて、前記複数のＷｅｂサイトを対象とした検索を、ユーザーの前記複数のＷｅｂページそれぞれに対するアクセス権に応じて行う情報処理装置及び情報処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００６】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
【０００７】
請求項１の発明は、複数のＷｅｂサイトと、該複数のＷｅｂサイトに対するユーザーのアクセス権とを対応づけて記憶する第一の記憶手段と、前記複数のＷｅｂサイトのそれぞれに対して、前記ユーザーのアクセス権に基づいてアクセスし、該複数のＷｅｂサイトに記載されている内容のインデックスを生成するインデキシング手段と、前記インデキシング手段により生成されたインデックスを前記ユーザーと対応づけて記憶する第二の記憶手段と、前記複数のＷｅｂサイトへの入り口を表現したポータルサイトを表示するよう制御する制御手段と、前記ポータルサイトにおいて、前記複数のＷｅｂサイトに対する検索条件の入力を前記ユーザーから受け付ける受付手段と、前記第二の記憶手段に記憶された、前記ユーザーに対応づけられたインデックスに対して、前記入力された検索条件に基づいた検索を行う検索手段と、を有する情報処理装置である。
【０００８】
請求項２の発明は、ユーザーが入力した検索条件を履歴として記憶する第三の記憶手段と、前記第二の記憶手段に記憶されている情報に対して、前記履歴に基づいて前記ユーザーのインデックスを並び替える並替手段をさらに有する請求項１に記載の情報処理装置である。
【０００９】
請求項３の発明は、複数のＷｅｂサイトのそれぞれに対して、ユーザーのアクセス権に基づいてアクセスし、該複数のＷｅｂサイトに記載されている内容のインデックスを該ユーザーと対応づけて記憶する記憶手段と、前記複数のＷｅｂサイトへの入り口を表現したポータルサイトを表示するよう制御する制御手段と、前記ポータルサイトにおいて、前記複数のＷｅｂサイトに対する検索条件の入力を前記ユーザーから受け付ける受付手段と、前記記憶手段に記憶された、前記ユーザーに対応づけられたインデックスに対して、前記入力された検索条件に基づいた検索を行う検索手段と、を有する情報処理装置である。
【００１０】
請求項４の発明は、コンピュータを、複数のＷｅｂサイトと、該複数のＷｅｂサイトに対するユーザーのアクセス権とを対応づけて記憶する第一の記憶手段と、前記複数のＷｅｂサイトのそれぞれに対して、前記ユーザーのアクセス権に基づいてアクセスし、該複数のＷｅｂサイトに記載されている内容のインデックスを生成するインデキシング手段と、前記インデキシング手段により生成されたインデックスを前記ユーザーと対応づけて記憶する第二の記憶手段と、前記複数のＷｅｂサイトへの入り口を表現したポータルサイトを表示するよう制御する制御手段と、前記ポータルサイトにおいて、前記複数のＷｅｂサイトに対する検索条件の入力を前記ユーザーから受け付ける受付手段と、前記第二の記憶手段に記憶された、前記ユーザーに対応づけられたインデックスに対して、前記入力された検索条件に基づいた検索を行う検索手段として機能させるための情報処理プログラムである。
【００１１】
請求項５の発明は、コンピュータを、複数のＷｅｂサイトのそれぞれに対して、ユーザーのアクセス権に基づいてアクセスし、該複数のＷｅｂサイトに記載されている内容のインデックスを該ユーザーと対応づけて記憶する記憶手段と、前記複数のＷｅｂサイトへの入り口を表現したポータルサイトを表示するよう制御する制御手段と、前記ポータルサイトにおいて、前記複数のＷｅｂサイトに対する検索条件の入力を前記ユーザーから受け付ける受付手段と、前記記憶手段に記憶された、前記ユーザーに対応づけられたインデックスに対して、前記入力された検索条件に基づいた検索を行う検索手段として機能させるための情報処理プログラムである。
【発明の効果】
【００１２】
請求項１の情報処理装置によれば、複数のＷｅｂサイトへの入り口を提供するポータルサイトにおいて、前記複数のＷｅｂサイトを対象とした検索を、ユーザーの前記複数のＷｅｂページそれぞれに対するアクセス権に応じて行うことができる。
【００１３】
請求項２の情報処理装置によれば、検索条件を履歴に基づいてユーザーのインデックスを並び替えることができる。
【００１４】
請求項３の情報処理装置によれば、複数のＷｅｂサイトへの入り口を提供するポータルサイトにおいて、前記複数のＷｅｂサイトを対象とした検索を、ユーザーの前記複数のＷｅｂページそれぞれに対するアクセス権に応じて行うことができる。
【００１５】
請求項４の情報処理プログラムによれば、複数のＷｅｂサイトへの入り口を提供するポータルサイトにおいて、前記複数のＷｅｂサイトを対象とした検索を、ユーザーの前記複数のＷｅｂページそれぞれに対するアクセス権に応じて行うことができる。
【００１６】
請求項５の情報処理プログラムによれば、複数のＷｅｂサイトへの入り口を提供するポータルサイトにおいて、前記複数のＷｅｂサイトを対象とした検索を、ユーザーの前記複数のＷｅｂページそれぞれに対するアクセス権に応じて行うことができる。
【図面の簡単な説明】
【００１７】
【図１】本実施の形態の構成例についての概念的なモジュール構成図である。
【図２】本実施の形態を利用したシステム構成例を示す説明図である。
【図３】本実施の形態による処理例を示すフローチャートである。
【図４】本実施の形態による処理例を示す説明図である。
【図５】クロール定義テーブルのデータ構造例を示す説明図である。
【図６】ユーザーアカウントテーブルのデータ構造例を示す説明図である。
【図７】インデックステーブルのデータ構造例を示す説明図である。
【図８】本実施の形態による処理例を示すフローチャートである。
【図９】インデックステーブルのデータ構造例を示す説明図である。
【図１０】キーワード入力履歴テーブルのデータ構造例を示す説明図である。
【図１１】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００１８】
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図１は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム（コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム）、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するという意味である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、１つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続（データの授受、指示、データ間の参照関係等）の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、２以上の値（もちろんのことながら、全ての値も含む）が同じであってもよい。また、「Ａである場合、Ｂをする」という意味を有する記載は、「Ａであるか否かを判断し、Ａであると判断した場合はＢをする」の意味で用いる。ただし、Ａであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、１つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」（社会システム）にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、外部記憶媒体、通信回線を介した記憶装置、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）内のレジスタ等を含んでいてもよい。
【００１９】
本実施の形態である情報処理装置１００は、複数のＷｅｂサイトへの入り口を提供するポータルサイトを構築するものであって、図１の例に示すように、クロール実行処理モジュール１１０、検索実行処理モジュール１５０を有している。
なお、ポータル（又は、ポータルサイト）とは、さまざまなＷｅｂサイトにおける入り口的な扱いのサイトのことである。本実施の形態の説明では、複数のサービスサイトへのアクセスを集約した入り口となるサイトを指す。特に、本実施の形態では、会員制ポータルサイトを主に対象とする。つまり、ポータルサイトを利用するのに、ユーザーはログインすることが必要であり、ポータルサイトを利用するユーザー（具体的には、ユーザーＩＤ）を、本実施の形態は、利用することができる。
ポートレットは、ポータルサイト（のトップページ）に機能や情報を追加することができるプログラムである。一般的には、Ｊａｖａ（登録商標）等の小さなプログラムで生成される。本実施の形態の説明では、各サービスが提供するページをポータルサイトの一部として表示する機能を実現するものを指す。
クローラーは、インターネット上のあらゆるＷｅｂサイトの情報を取得して検索用データベース・インデックスを作成する自動巡回プログラムであり、ロボットともいわれる。本実施の形態の説明では、ポートレット経由で提供される各サービスのコンテンツを巡回するプログラムを指す。
【００２０】
クロール実行処理モジュール１１０は、ポートレット設定データ１１５、クロール定義取得モジュール１２０、ユーザーアカウントデータ１２５、クロール実行モジュール１３０、クロール結果インデックスデータ１３５を有している。クロール実行処理モジュール１１０は、ログインユーザー（以下、単にユーザーともいう）がアクセス可能なＷｅｂサイト（サービスＡコンテンツデータ処理装置１９０Ａ、サービスＢコンテンツデータ処理装置１９０Ｂ、サービスＣコンテンツデータ処理装置１９０Ｃ）から検索に用いるインデックスを生成する。
検索実行処理モジュール１５０は、検索キーワード受付モジュール１５５、検索実行モジュール１６０、検索結果取得モジュール１６５、検索結果表示モジュール１７０、ユーザー検索実行履歴データ１７５、インデックス並び替え処理モジュール１８０を有している。検索実行処理モジュール１５０は、複数のＷｅｂサイトへの入り口を表現したポータルサイトを表示するよう制御する。そして、ユーザーの検索指示に基づいて、クロール実行処理モジュール１１０が作成したインデックスを用いて検索を行う。
【００２１】
ポートレット設定データ１１５は、クロール定義取得モジュール１２０と接続されている。ポートレット設定データ１１５は、ポートレット毎に保持されているクロール関連情報等のデータを記憶している。クロール定義取得モジュール１２０がクロールするたびに参照される。例えば、クロール定義テーブル５００を記憶している。図５は、クロール定義テーブル５００のデータ構造例を示す説明図である。クロール定義テーブル５００は、属性として、例えば、ＵＲＬ欄５１２、クロール対象ＵＲＬ欄５１４、クロール除外ＵＲＬ欄５１６、検索対象ＵＲＬ欄５１８、検索対象除外ＵＲＬ欄５２０、巡回深度欄５２２、巡回間隔欄５２４、巡回スレッド数欄５２６等を有している。ＵＲＬ欄５１２は、クロール対象のＷｅｂサイトのＵＲＬを記憶している。クロール対象ＵＲＬ欄５１４は、クロール対象のＷｅｂサイトのＵＲＬを記憶している。ＵＲＬ欄５１２によるＵＲＬをさらに限定する場合に用いられる。クロール除外ＵＲＬ欄５１６は、クロール対象から除外するＷｅｂサイトのＵＲＬを記憶している。検索対象ＵＲＬ欄５１８は、検索対象のＷｅｂサイトのＵＲＬを記憶している。検索対象除外ＵＲＬ欄５２０は、検索対象から除外するＷｅｂサイトのＵＲＬを記憶している。巡回深度欄５２２は、巡回深度（クロール対象のＷｅｂサイトのリンクを辿る回数）を記憶している。巡回間隔欄５２４は、巡回間隔（クロールを行う間隔）を記憶している。巡回スレッド数欄５２６は、巡回スレッド数（同時に（又は並列的に）クロール処理を行う数）を記憶している。
【００２２】
クロール定義取得モジュール１２０は、ポートレット設定データ１１５、クロール実行モジュール１３０と接続されている。クロール定義取得モジュール１２０は、ポートレット設定データ１１５内からクロールの定義を取得する。具体的には、クロールに必要なクロール定義テーブル５００を取得して、クロール実行モジュール１３０に渡す。
【００２３】
ユーザーアカウントデータ１２５は、クロール実行モジュール１３０と接続されている。ユーザーアカウントデータ１２５は、複数のＷｅｂサイトと、その複数のＷｅｂサイトに対するユーザーのアクセス権とを対応づけて記憶する。つまり、サービスコンテンツデータ処理装置１９０に対するユーザーのアカウントのデータを記憶している。クロールする際に、偽装ログインするために、クロール実行モジュール１３０によって参照される。例えば、ユーザーアカウントテーブル６００を記憶している。クロール実行モジュール１３０は、ユーザーアカウントテーブル６００内のデータを用いて、各サービスコンテンツデータ処理装置１９０にログインして、そのサービスコンテンツデータ処理装置１９０内のデータにアクセスする。図６は、ユーザーアカウントテーブル６００のデータ構造例を示す説明図である。ユーザーアカウントテーブル６００は、ユーザーＩＤ欄６１０、サービスＡ  ＵＲＬ欄６２０、ログインＩＤ欄６２２、パスワード欄６２４、サービスＢ  ＵＲＬ欄６３０、ログインＩＤ欄６３２、パスワード欄６３４等を有している。ユーザーＩＤ欄６１０は、本実施の形態において、ユーザー（情報処理装置１００におけるログインユーザー）を一意に識別するための情報（ユーザーＩＤ：ＩＤｅｎｔｉｆｉｃａｔｉｏｎ）を記憶している。サービスＡ  ＵＲＬ欄６２０は、サービスＡ（サービスＡコンテンツデータ処理装置１９０Ａ）のＵＲＬを記憶している。ログインＩＤ欄６２２は、サービスＡのログインＩＤ（サービスＡコンテンツデータ処理装置１９０ＡにおけるログインユーザーのＩＤ）を記憶している。パスワード欄６２４は、サービスＡのパスワードを記憶している。サービスＢ  ＵＲＬ欄６３０は、サービスＢ（サービスＢコンテンツデータ処理装置１９０Ｂ）のＵＲＬを記憶している。ログインＩＤ欄６３２は、サービスＢのログインＩＤ（サービスＢコンテンツデータ処理装置１９０ＢにおけるログインユーザーのＩＤ）を記憶している。パスワード欄６３４は、サービスＢのパスワードを記憶している。もちろんのことながら、サービスコンテンツデータ処理装置１９０にアクセスするための情報であるならば、ログインＩＤ、パスワード以外の情報であってもよいし、暗号化しておいてもよいし、例えば、複数のパスワードを必要とする場合は、その複数のパスワードを記憶している。
【００２４】
クロール実行モジュール１３０は、クロール定義取得モジュール１２０、ユーザーアカウントデータ１２５、クロール結果インデックスデータ１３５、サービスＡコンテンツデータ処理装置１９０Ａ、サービスＢコンテンツデータ処理装置１９０Ｂ、サービスＣコンテンツデータ処理装置１９０Ｃと接続されている。クロール実行モジュール１３０は、インデクサとしての機能を有しており、複数のＷｅｂサイトのそれぞれに対して、ユーザーアカウントデータ１２５によって記憶されているユーザーのアクセス権に基づいてアクセスし、複数のＷｅｂサイトに記載されている内容のインデックスを生成する。一般的に、クロールするページ毎にＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）が異なっており、そのＵＲＬ毎にインデクサが検索結果をデータベース化する。つまり、クロール定義取得モジュール１２０が取得したクロールの定義にしたがって、サービスコンテンツデータ処理装置１９０にクロールを実行する。その際に、サービスコンテンツデータ処理装置１９０にアクセスするために、ユーザーアカウントテーブル６００を用いて偽装ログインする。また、インデックスの生成は、既存の技術を用いればよい。例えば、形態素解析、ｔｆ−ｉｄｆ等の技術を用いて、キーワードを抽出すればよい。
なお、検索実行処理モジュール１５０による検索が実行される前に、クロールを行って、インデックスを生成し、クロール結果インデックスデータ１３５にそのインデックスを記憶させていればよい。また、ポータルサイトにログインしたことを契機として、クロール実行モジュール１３０がクロールを開始するようにしてもよい。
また、クロール実行モジュール１３０は、アクセス権についてクロール時にアクセス不可のＵＲＬをマークしキャッシュしておくことで、都度確認は行わないようにし、キャッシュはＵＲＬ先のページ更新時に更新するようにしてもよい。
【００２５】
クロール結果インデックスデータ１３５は、クロール実行モジュール１３０、検索実行処理モジュール１５０の検索実行モジュール１６０、インデックス並び替え処理モジュール１８０と接続されている。クロール結果インデックスデータ１３５は、クロール実行モジュール１３０により生成されたインデックスをユーザーと対応づけて記憶する。つまり、複数のＷｅｂサイトのそれぞれに対して、ユーザーのアクセス権に基づいてアクセスし、その複数のＷｅｂサイトに記載されている内容のインデックスをそのユーザーと対応づけて記憶する。つまり、クロールした結果のデータを記憶しており、検索実行処理モジュール１５０による検索実行時に参照される。例えば、インデックステーブル７００を記憶している。図７は、インデックステーブル７００のデータ構造例を示す説明図である。インデックステーブル７００は、ＵＩＤ欄７１０、ＵＲＬ欄７２０、キーワード欄７３０、ステータス欄７４０、更新日時欄７５０、優先ポイント欄７６０を有している。ＵＩＤ欄７１０は、ＵＩＤ（ユーザーＩＤ）を記憶している。ＵＲＬ欄７２０は、そのユーザーＩＤでアクセス（クロール）したＵＲＬを記憶している。キーワード欄７３０は、そのＵＲＬのＷｅｂサイト内のキーワード（インデックス）を記憶している。ステータス欄７４０は、そのＵＲＬにアクセスできたか否かを示すステータスを記憶している。例えば、アクセス可能を示す情報として「２００」を用い、アクセスできなかったことを示す情報として「４０３」を用いる。更新日時欄７５０は、そのＵＲＬの更新日時（年、月、日、時、分、秒、秒以下、又はこれらの組み合わせであってもよい）を記憶している。優先ポイント欄７６０は、そのＵＲＬの優先して表示すべき度合いを示す情報である優先ポイントを記憶している。
【００２６】
検索キーワード受付モジュール１５５は、検索実行モジュール１６０と接続されている。検索キーワード受付モジュール１５５は、ポータルサイトにおいて、複数のＷｅｂサイトに対する検索条件の入力をユーザーから受け付ける。例えば、ユーザーの操作に基づいて、検索のために入力されたキーワードを受け付ける。
検索実行モジュール１６０は、検索キーワード受付モジュール１５５、検索結果取得モジュール１６５、ユーザー検索実行履歴データ１７５、クロール実行処理モジュール１１０のクロール結果インデックスデータ１３５と接続されている。検索実行モジュール１６０は、クロール結果インデックスデータ１３５に記憶された、ユーザーに対応づけられたインデックスに対して、検索キーワード受付モジュール１５５によって入力された検索条件に基づいた検索を行う。例えば、クロール結果インデックスデータ１３５内のインデックス内を検索実行する。実行後は検索履歴としてユーザー検索実行履歴データ１７５に記録する。
検索結果取得モジュール１６５は、検索実行モジュール１６０、検索結果表示モジュール１７０と接続されている。検索結果取得モジュール１６５は、検索実行モジュール１６０による検索した結果を取得する。
検索結果表示モジュール１７０は、検索結果取得モジュール１６５と接続されている。検索結果表示モジュール１７０は、検索した結果を、検索指示を行ったユーザーが確認することができる液晶ディスプレイ等の表示装置に表示する。一般的には、検索指示を行った画面に表示する。
【００２７】
ユーザー検索実行履歴データ１７５は、検索実行モジュール１６０、インデックス並び替え処理モジュール１８０と接続されている。ユーザー検索実行履歴データ１７５は、ユーザーが入力した検索条件を履歴として記憶する。例えば、ユーザーによる検索条件、そして、その検索条件にしたがって検索した結果であるデータを記憶している。また、クロールインデックスの並び替えによる最適化処理を行うために、インデックス並び替え処理モジュール１８０から参照される。
インデックス並び替え処理モジュール１８０は、ユーザー検索実行履歴データ１７５、クロール実行処理モジュール１１０のクロール結果インデックスデータ１３５と接続されている。インデックス並び替え処理モジュール１８０は、クロール結果インデックスデータ１３５に記憶されている情報に対して、ユーザー検索実行履歴データ１７５に記憶されている履歴に基づいてユーザーのインデックスを並び替える。
【００２８】
サービスコンテンツデータ処理装置１９０（サービスＡコンテンツデータ処理装置１９０Ａ、サービスＢコンテンツデータ処理装置１９０Ｂ、サービスＣコンテンツデータ処理装置１９０Ｃ）は、クロール実行処理モジュール１１０のクロール実行モジュール１３０と接続されている。サービスコンテンツデータ処理装置１９０は、サービスサイトのコンテンツデータを記憶している。つまり、ポートレット内に表示されるデータを記憶している。ユーザーがアクセス可能であるサービスコンテンツデータ処理装置１９０だけでなく、アクセスできないサービスコンテンツデータ処理装置１９０が含まれていてもよい。
図１の例では、３つのサービスコンテンツデータ処理装置１９０を示しているが、もちろんのことながら、２つ以上のサービスコンテンツデータ処理装置１９０があればよい。また、１つのポータルサイト内には、全てのサービスコンテンツデータ処理装置１９０に対応したポートレットがある必要はなく、ユーザーによる設定（又はデフォルトの設定）で選択される。また、１つのサービスコンテンツデータ処理装置１９０に対して複数のポートレットが割り当てられるようにしてもよい。この場合、一般的には、各ポートレットに割り当てられているＵＲＬは、サービスコンテンツデータ処理装置１９０内の異なるＵＲＬである場合が多い。例えば、サービスコンテンツデータ処理装置１９０として、そのユーザーが管理している複写機、ファックス、スキャナ、プリンター、複合機（スキャナ、プリンター、複写機、ファックス等のいずれか２つ以上の機能を有している画像処理装置）に関する情報（例えば、プリント枚数、故障情報等）を表示するものであってもよい。
【００２９】
情報処理装置１００による処理の概要を説明する。
ポータルサイトの各ポートレット毎にクローラーでインデックスが生成される。ポータルサイトからポートレット経由で提供されたサービス情報を検索する場合、ログインユーザーがアクセス可能なサービス情報に対して検索を行う。つまり、ログインユーザーから見ると、ポータルサイト内をあたかも検索しているかの如くに、各ポートレットに対応づけられているＷｅｂサイトを検索することとなる。また、ログインユーザー毎に検索実行履歴を元に検索実行順序の決定を行う。
【００３０】
図２は、本実施の形態を利用したシステム構成例を示す説明図である。
サービスＡコンテンツデータ処理装置１９０Ａ、サービスＢコンテンツデータ処理装置１９０Ｂ、サービスＣコンテンツデータ処理装置１９０Ｃ、情報処理装置１００、クロール実行処理装置２１０、検索実行処理装置２５０、ユーザー端末２８０Ａ、ユーザー端末２８０Ｂ、ユーザー端末２８０Ｃは、通信回線２９０を介してそれぞれ接続されている。通信回線２９０は、無線、有線、これらの組み合わせであってもよく、例えば、通信インフラとしてのインターネット、イントラネット等であってもよい。
予め情報処理装置１００は、クロール処理によって各ユーザーがアクセス可能なサービスコンテンツデータ処理装置１９０から検索用のインデックスを生成しておく。
ユーザーの操作に応じて、ユーザー端末２８０からポータルサイトにログインされ、検索指示が行われる。情報処理装置１００は、その検索指示を行ったユーザーに対応するインデックスに対して、検索処理を行って、結果を表示する。したがって、検索結果には、そのユーザーがアクセス可能な情報が表示されることになる。
また、情報処理装置１００内のクロール実行処理モジュール１１０と検索実行処理モジュール１５０は、別々の情報処理装置として構築されていてもよい。例えば、クロール実行処理装置２１０は、クロール実行処理モジュール１１０を有しており、検索実行処理装置２５０は、検索実行処理モジュール１５０を有している形態であってもよい。
情報処理装置１００、クロール実行処理装置２１０、検索実行処理装置２５０による機能は、クラウドサービスとして実現してもよい。
【００３１】
図３は、本実施の形態による処理例（クロール実行処理モジュール１１０によるクロール実行処理例）を示すフローチャートである。
サービスコンテンツデータ処理装置１９０に偽装ログインして、ポートレット毎に定義されたクロールを実行する。巡回時にはＨＴＴＰのリターンコード（具体的には、「２００」、「４０３」等）をインデックスに記録しておき、そのユーザーがアクセス可能なＵＲＬか否かを後の検索実行時に利用できるようにしておく。
図３の例に示す処理をユーザー毎にクロール定義で定められた間隔で定期的に実行することで、クロールのインデックスデータをポートレット毎に作成する。
【００３２】
ステップＳ３０２では、クロール定義取得モジュール１２０は、ポートレット設定からクロール定義を取得する。
ステップＳ３０４では、クロール実行モジュール１３０は、ユーザーに偽装ログイン（ｉｍｐｅｒｓｏｎｅｔｅ）する。
ステップＳ３０６では、クロール実行モジュール１３０は、サービスのＵＲＬを巡回し、キーワードを抽出する。
ステップＳ３０８では、クロール実行モジュール１３０は、巡回すべきサービスのＵＲＬが残っているか否かを判断し、残っている場合はステップＳ３１０へ進み、それ以外の場合は処理を終了する（ステップＳ３９９）。
ステップＳ３１０では、クロール実行モジュール１３０は、当該ＵＲＬは先回（前回）巡回時から更新されているか否かを判断し、更新されている場合はステップＳ３１４へ進み、それ以外の場合はステップＳ３１２へ進む。
ステップＳ３１２では、クロール実行モジュール１３０は、次のＵＲＬに処理を進め、ステップＳ３０６以降の処理を繰り返す。
ステップＳ３１４では、クロール実行モジュール１３０は、ＵＲＬへアクセスを試みた（偽装ログインした）結果、アクセス可能であるか否かを判断し、アクセス可能である場合はステップＳ３１６へ進み、それ以外の場合はステップＳ３１８へ進む。
ステップＳ３１６では、クロール実行モジュール１３０は、アクセス可能なＵＲＬとしてインデックスに記録する。具体的には、インデックステーブル７００のステータス欄７４０に「２００」を設定する。
ステップＳ３１８では、クロール実行モジュール１３０は、アクセス不可なＵＲＬとしてインデックスに記録する。具体的には、インデックステーブル７００のステータス欄７４０に「４０３」を設定する。
ステップＳ３２０では、クロール実行モジュール１３０は、次のＵＲＬに処理を進め、ステップＳ３０６以降の処理を繰り返す。
【００３３】
図４は、本実施の形態による処理例を示す説明図である。
ポータル画面４００は、ユーザーの操作に応じて、ポータルサイトにログインした場合の画面例である。
ポータル画面４００には、ポートレット表示領域４１０、ポートレット表示領域４２０、ポートレット表示領域４３０、検索領域４５０が表示されている。ポートレット表示領域４１０、ポートレット表示領域４２０、ポートレット表示領域４３０は、ユーザーによって設定されており、サービスコンテンツデータ処理装置１９０内の情報が表示されている。
検索領域４５０は、検索キーワード指定枠４５２、検索ボタン４５４を有している。検索キーワード指定枠４５２に検索用のキーワードが入力され、検索ボタン４５４が選択されることによって、検索指示が行われる。
【００３４】
図８は、本実施の形態による処理例（検索実行処理モジュール１５０による検索処理例）を示すフローチャートである。
ユーザーが検索のために入力したキーワードを用いて、クロール結果のインデックスからそのキーワードにヒットするＵＲＬを抽出する。その中でアクセス可能なものを検索結果として採用する。
検索完了後は、検索結果からインデックスの並び替えを実施して、次回以降の検索効率を向上させる。
図８の例に示す処理をポートレット毎に実行し、全ての結果をマージしたものをポータルサイトの検索結果としてユーザーに表示する。
【００３５】
ステップＳ８０２では、検索キーワード受付モジュール１５５は、ユーザーの操作によって検索ボタン４５４が選択された場合（検索指示が行われた場合）、ポータルサイトの検索領域４５０の検索キーワード指定枠４５２内の検索キーワードを受け付ける。
ステップＳ８０４では、検索実行モジュール１６０は、クロール結果のインデックス（具体的には、インデックステーブル９００）からキーワードにヒットするＵＲＬを抽出する。図９は、インデックステーブル９００のデータ構造例を示す説明図である。インデックステーブル９００は、図７に例示したインデックステーブル７００と同等のデータ構造を有しているが、そのユーザーにおけるインデックステーブル９００としたものである。具体的には、インデックステーブル９００のＵＩＤ欄９１０からログインユーザーにマッチするレコードを抽出する。つまり、ＵＩＤ欄９１０がログインユーザー「ｔａｒｏ」であるレコードだけから構成されているものとなる。そして、インデックステーブル９００のキーワード欄９３０内で、キーワードにヒットしたものを検索結果として抽出する。
【００３６】
ステップＳ８０６では、検索実行モジュール１６０は、ＵＲＬが抽出されたか否かを判断し、抽出された場合はステップＳ８０８へ進み、それ以外の場合はステップＳ８１４へ進む。
ステップＳ８０８では、検索実行モジュール１６０は、ＵＲＬはアクセス可能であるか否かを判断し、アクセス可能である場合はステップＳ８１２へ進み、それ以外の場合はステップＳ８１０へ進む。具体的には、インデックステーブル９００のステータス欄９４０を参照して、アクセス無効なステータス（「４０３」）は検索結果から除外する。
【００３７】
ステップＳ８１０では、検索実行モジュール１６０は、次のインデックスの処理に進める。
ステップＳ８１２では、検索実行モジュール１６０は、検索結果一覧の最後に追加する。例えば、キーワード入力履歴テーブル１０００に追加する。図１０は、キーワード入力履歴テーブル１０００のデータ構造例を示す説明図である。
キーワード入力履歴テーブル１０００は、ＵＩＤ欄１０１０、キーワード欄１０２０、入力日時欄１０３０を有している。ＵＩＤ欄１０１０は、ユーザーＩＤを記憶している。キーワード欄１０２０は、そのユーザーによる検索指示におけるキーワード（検索対象語）を記憶している。入力日時欄１０３０は、その検索指示が行われた日時を記憶している。
【００３８】
ステップＳ８１４では、インデックス並び替え処理モジュール１８０は、検索結果一覧の上位からインデックスの並び替えを実施する。具体的には、キーワード入力履歴の日時、頻度に応じてインデックスデータを並び替える。例えば、キーワード入力履歴テーブル１０００でのキーワード出現数で優先ポイントを計算して並び替える。具体例として、キーワード「プリンター」で３１回、「ＦＡＸ」で１１回、「印刷」で８回の場合、以下の式で優先ポイントを計算する。
プリンター（３１回）＋ＦＡＸ（１１回）＋印刷（８回）＝５０ｐｔ
つまり、過去に検索用のキーワードとして用いたものが多いほど、優先ポイントが高くなるようになり、他のＵＲＬよりも優先して表示する。具体的には、検索結果における表示順序を上位にするようにしてもよい。そして、表示形態（色、文字の太さ、点滅表示等）を他の検索結果と異ならせるようにしてもよい。
ステップＳ８１６では、検索結果取得モジュール１６５は、検索結果を取得する。
ステップＳ８１８では、検索結果表示モジュール１７０は、検索結果をポータルサイトに表示させる。
【００３９】
なお、本実施の形態としてのプログラムが実行されるコンピュータのハードウェア構成は、図１１に例示するように、一般的なコンピュータであり、具体的にはパーソナルコンピュータ、サーバーとなり得るコンピュータ等である。つまり、具体例として、処理部（演算部）としてＣＰＵ１１０１を用い、記憶装置としてＲＡＭ１１０２、ＲＯＭ１１０３、ＨＤ１１０４を用いている。ＨＤ１１０４として、例えばハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）を用いてもよい。クロール定義取得モジュール１２０、検索キーワード受付モジュール１５５、検索実行モジュール１６０、検索結果取得モジュール１６５、検索結果表示モジュール１７０、インデックス並び替え処理モジュール１８０等のプログラムを実行するＣＰＵ１１０１と、そのプログラムやデータを記憶するＲＡＭ１１０２と、本コンピュータを起動するためのプログラム等が格納されているＲＯＭ１１０３と、ポートレット設定データ１１５、ユーザーアカウントデータ１２５、クロール結果インデックスデータ１３５、ユーザー検索実行履歴データ１７５等の機能を有する補助記憶装置（フラッシュメモリ等であってもよい）であるＨＤ１１０４と、キーボード、マウス、タッチパネル、マイク等に対する利用者の操作に基づいてデータを受け付ける受付装置１１０６と、ＣＲＴ、液晶ディスプレイ、スピーカー等の出力装置１１０５と、ネットワークインタフェースカード等の通信ネットワークと接続するための通信回線インタフェース１１０７、そして、それらをつないでデータのやりとりをするためのバス１１０８により構成されている。これらのコンピュータが複数台互いにネットワークによって接続されていてもよい。
【００４０】
前述の実施の形態のうち、コンピュータ・プログラムによるものについては、本ハードウェア構成のシステムにソフトウェアであるコンピュータ・プログラムを読み込ませ、ソフトウェアとハードウェア資源とが協働して、前述の実施の形態が実現される。
なお、図１１に示すハードウェア構成は、１つの構成例を示すものであり、本実施の形態は、図１１に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えば特定用途向け集積回路（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ：ＡＳＩＣ）等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図１１に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、特に、パーソナルコンピュータの他、携帯情報通信機器（携帯電話、スマートフォン、モバイル機器、ウェアラブルコンピュータ等を含む）、情報家電、ロボット、複写機、ファックス、スキャナ、プリンター、複合機などに組み込まれていてもよい。
【００４１】
前述の実施の形態においては、ポータルサイトとして、ポートレットを用いる例を示したが、ＨＴＭＬにおけるｉｆｒａｍｅ（インラインフレーム）等を用いて実現してもよい。
【００４２】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通等のために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、ブルーレイ・ディスク（Ｂｌｕ−ｒａｙ（登録商標）  Ｄｉｓｃ）、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書換可能な読出し専用メモリ（ＥＥＰＲＯＭ（登録商標））、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）、ＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリーカード等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、又は無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、又は別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して記録されていてもよい。また、圧縮や暗号化等、復元可能であればどのような態様で記録されていてもよい。
【符号の説明】
【００４３】
１００…情報処理装置
１１０…クロール実行処理モジュール
１１５…ポートレット設定データ
１２０…クロール定義取得モジュール
１２５…ユーザーアカウントデータ
１３０…クロール実行モジュール
１３５…クロール結果インデックスデータ
１５０…検索実行処理モジュール
１５５…検索キーワード受付モジュール
１６０…検索実行モジュール
１６５…検索結果取得モジュール
１７０…検索結果表示モジュール
１７５…ユーザー検索実行履歴データ
１８０…インデックス並び替え処理モジュール
１９０…サービスコンテンツデータ処理装置
２１０…クロール実行処理装置
２５０…検索実行処理装置
２８０…ユーザー端末
２９０…通信回線
【図１】
2017016446.tif 000003
【図２】
2017016446.tif 000004
【図３】
2017016446.tif 000005
【図４】
2017016446.tif 000006
【図５】
2017016446.tif 000007
【図６】
2017016446.tif 000008
【図７】
2017016446.tif 000009
【図８】
2017016446.tif 000010
【図９】
2017016446.tif 000011
【図１０】
2017016446.tif 000012
【図１１】
2017016446.tif 000013