以下に図面を参照して、本発明にかかる情報提供プログラム、情報提供方法および情報提供装置の実施の形態を詳細に説明する。
(情報提供方法の一実施例)
図1は、実施の形態にかかる情報提供方法の一実施例を示す説明図である。図1において、情報提供装置101は、複数のサイトの情報を一画面に集約して出力する機能を有するコンピュータである。サイトは、ページまたはページの集合であり、例えば、Webサイトである。
ページは、ネットワーク上に公開される情報であり、例えば、Webページである。ページは、html(HyperText Markup Language)またはxhtml(Extensible HyperText Markup Language)によって記述された電子文書(htmlデータ、xhtmlデータ)や画像データなどを含む。
ここで、銀行サイトS1、証券会社サイトS2および年金サイトS3の情報を一覧画面110に集約して出力する場合を想定する。この場合、ユーザは、銀行サイトS1、証券会社サイトS2および年金サイトS3の各サイトについて、各サイトのどの部分の情報を取得するのかを予め設定する。
一例として、年金サイトS3の厚生年金情報ページの取得年金額(見込み)を取得する場合を想定する。この場合、例えば、初期設定画面120において、ユーザの操作入力により、年金サイトS3の厚生年金情報ページの取得年金額(見込み)を表示する領域130を設定する。これにより、一覧画面110の予め設定した位置に、年金サイトS3の厚生年金情報ページの領域130内の情報を表示することができる。
一方、各サイトの提供者はそれぞれ異なることが多く、また、各サイトの画面構成や掲載内容は提供者によって任意に変更される。各サイトの画面構成や掲載内容が変更されると、各サイトについて予め設定した領域(例えば、領域130)の位置がずれて、ユーザの意図通りの情報を一覧画面110に表示できなくなる場合がある。したがって、ユーザの意図通りの情報を一覧画面110に表示させるためには、各サイトの画面構成や掲載内容の変更に合わせて、各サイトから取得する情報についての設定を変更することになる。
ところが、各サイトの画面構成や掲載内容が変更されるたびに、ユーザが、各サイトにアクセスして変更内容を確認し、各サイトから取得する情報についての設定を変更するのは時間や手間がかかる。また、ユーザが、各サイトの画面構成や掲載内容が変更されたことに気付かず、ユーザの意図とは異なる情報が一覧画面110に表示されていても気付かない場合がある。
そこで、本実施の形態では、サイトの画面構成や掲載内容が変更されて、ユーザの意図通りの情報を取得できなくなった場合に、サイトのどの部分の情報を取得するのかについての再設定をしやすくして設定変更にかかる手間を削減する情報提供方法について説明する。以下、情報提供装置101の情報提供処理の一実施例について説明する。
(1)情報提供装置101は、予め記録されたサイトSの識別情報を参照して、サイトSの画面の画像データを取得する。ここで、サイトSは、一画面に情報を集約して表示する複数のサイトのいずれかのサイトである。サイトSの識別情報とは、サイトSを識別する情報であり、例えば、サイトSのURL(Uniform Resource Locator)である。
具体的には、例えば、まず、情報提供装置101は、年金サイトS3のURLを参照して、年金サイトS3の厚生年金情報ページにアクセスし、厚生年金情報ページの画面情報を取得する。ここで、画面情報は、厚生年金情報ページを表示するための情報であり、例えば、厚生年金情報ページのhtmlデータやxhtmlデータである。
そして、情報提供装置101は、厚生年金情報ページの画面情報に基づいて、厚生年金情報ページをキャプチャして、厚生年金情報ページの画像データ140を取得する。なお、キャプチャとは、ディスプレイに表示される画面イメージを画像データとして保存することである。
(2)情報提供装置101は、サイトSの識別情報と対応付けて予め記録された、サイトSの画面を出力した際に設定された領域Tの位置情報に基づいて、取得したサイトSの画面の画像データから領域Tの画像データを抽出する。ここで、領域Tとは、サイトSの画面の画像データにおける、サイトSから取得する情報を含む範囲である。
また、領域Tの位置情報とは、サイトSの画面の画像データにおける領域Tの位置を示す情報であり、例えば、領域Tを形成する頂点の座標(x座標、y座標)である。例えば、領域Tが矩形の場合、領域Tの位置情報は、矩形の対角の2頂点の座標であってもよい。また、領域Tが円の場合、領域Tの位置情報は、円の中心の座標と半径であってもよい。図1の例では、年金サイトS3の厚生年金情報ページの画面の画像データ140から、領域130の画像データ150が抽出される。
(3)情報提供装置101は、抽出した領域Tの画像データの文字認識処理を行う。ここで、文字認識処理とは、画像データの中から、文字の形状に基づいて文字を識別し、コンピュータ上で扱える文字データに変換する処理である。文字認識処理は、例えば、OCR(Optical Character Recognition)処理である。
(4)情報提供装置101は、文字認識処理により文字を認識できなかった場合、取得したサイトSの画面の画像データを出力する。図1の例では、年金サイトS3の厚生年金情報ページの掲載内容が変更されたため、予め設定された領域130の位置が、取得年金額(見込み)を表示する部分からずれている。このため、取得年金額(見込み)を示す「2480000」の数字列が認識されなくなっている。
この場合、情報提供装置101は、取得した年金サイトS3の厚生年金情報ページの画像データ140を出力する。具体的には、例えば、情報提供装置101は、領域130の位置情報から特定される画像データ140上の位置に、領域130を示す情報を重畳して表示する再設定画面170を出力する。
ここで、領域130を示す情報は、領域130の存在を示すものであり、例えば、領域130の範囲を特定する情報である。図1の例では、再設定画面170において、画像データ140に領域130の範囲を特定する範囲枠160が重畳して表示されている。また、再設定画面170は、年金サイトS3の厚生年金情報ページにおける領域Tを再設定するための画面である。
このように、情報提供装置101によれば、予め記録された、サイトSの識別情報と領域Tの位置情報とに基づいて、取得したサイトSの画面の画像データから抽出した領域Tの画像データの文字認識処理を行うことができる。また、情報提供装置101によれば、文字認識処理により文字を認識できなかった場合、取得したサイトSの画面の画像データ上の、領域Tの位置情報により特定される位置に、領域Tを示す情報を重畳して出力することができる。
これにより、サイトSの画面構成や掲載内容が変更されて、ユーザの意図通りの情報を取得できなくなった場合に、サイトSのどの部分の情報を取得するのかについての再設定をしやすくして設定変更にかかる手間を削減することができる。
例えば、年金サイトS3からユーザの意図通りの情報を取得できなくなった場合に、再設定画面170を表示することで、年金サイトS3の掲載内容が変更されたことをユーザに気付かせることができる。また、再設定画面170において、年金サイトS3の厚生年金情報ページについての領域130の再設定を行わせることができる。
また、再設定画面170において、領域130が設定されていた画像データ140上の位置に範囲枠160を重畳表示することで、どのような状態で意図した情報が取得できなくなっているのかをユーザに把握しやすくさせて、領域130を修正しやすくすることができる。
(システム200のシステム構成例)
つぎに、実施の形態にかかるシステム200のシステム構成例について説明する。
図2は、システム200のシステム構成例を示す説明図である。図2において、システム200は、情報提供装置101とサーバ201を含む。システム200において、情報提供装置101とサーバ201は、有線または無線のネットワーク210を介して相互に通信可能に接続される。ネットワーク210は、例えば、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)などである。
ここで、情報提供装置101は、アカウントアグリゲーション情報DB(データベース)220および一覧情報DB230を有する。具体的には、例えば、情報提供装置101は、ブラウザがインストールされたPC(Personal Computer)、ノートPC、タブレット型PC、スマートフォン、携帯電話機などである。
なお、アカウントアグリゲーション情報DB220および一覧情報DB230についての説明は、図5および図6を用いて後述する。
サーバ201は、情報提供装置101からの要求に応じて、htmlデータや画像などを含むサイトSの画面情報を送信するコンピュータである。情報提供装置101は、サーバ201からのサイトSの画面情報に基づいて、サイトSの画面を表示することができる。具体的には、例えば、サーバ201は、Webサーバである。
(情報提供装置101のハードウェア構成例)
図3は、情報提供装置101のハードウェア構成例を示すブロック図である。図3において、情報提供装置101は、CPU(Central Processing Unit)301と、メモリ302と、ディスクドライブ303と、ディスク304と、ディスプレイ305と、I/F(Interface)306と、キーボード307と、マウス308と、スキャナ309と、プリンタ310と、を有する。また、各構成部はバス300によってそれぞれ接続される。
ここで、CPU301は、情報提供装置101の全体の制御を司る。メモリ302は、例えば、ROM、RAMおよびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU301のワークエリアとして使用される。メモリ302に記憶されるプログラムは、CPU301にロードされることで、コーディングされている処理をCPU301に実行させる。
ディスクドライブ303は、CPU301の制御にしたがってディスク304に対するデータのリード/ライトを制御する。ディスク304は、ディスクドライブ303の制御で書き込まれたデータを記憶する。ディスク304としては、例えば、磁気ディスク、光ディスクなどが挙げられる。
ディスプレイ305は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。ディスプレイ305は、例えば、CRT、TFT液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
I/F306は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して他のコンピュータ(例えば、サーバ201)に接続される。そして、I/F306は、ネットワーク210と内部のインターフェースを司り、他のコンピュータからのデータの入出力を制御する。I/F306には、例えば、モデムやLANアダプタなどを採用することができる。
キーボード307は、文字、数字、各種指示などの入力のためのキーを備え、データの入力を行う。キーボード307は、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス308は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。
スキャナ309は、画像を光学的に読み取り、情報提供装置101内に画像データを取り込む。スキャナ309は、OCR機能を有していてもよい。プリンタ310は、画像データや文書データを印刷する。プリンタ310には、例えば、レーザプリンタやインクジェットプリンタを採用することができる。なお、情報提供装置101は、例えば、上述した構成部のうち、スキャナ309、プリンタ310などを有さないことにしてもよい。
(サーバ201のハードウェア構成例)
図4は、サーバ201のハードウェア構成例を示すブロック図である。図4において、サーバ201は、CPU401と、メモリ402と、I/F403と、ディスクドライブ404と、ディスク405と、を有する。また、各構成部は、バス400によってそれぞれ接続される。
ここで、CPU401は、サーバ201の全体の制御を司る。メモリ402は、例えば、ROM、RAMおよびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU401のワークエリアとして使用される。メモリ402に記憶されるプログラムは、CPU401にロードされることで、コーディングされている処理をCPU401に実行させる。
I/F403は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して他のコンピュータ(例えば、図2に示した情報提供装置101)に接続される。そして、I/F403は、ネットワーク210と内部のインターフェースを司り、他のコンピュータからのデータの入出力を制御する。I/F403には、例えば、モデムやLANアダプタなどを採用することができる。
ディスクドライブ404は、CPU401の制御にしたがってディスク405に対するデータのリード/ライトを制御する。ディスク405は、ディスクドライブ404の制御で書き込まれたデータを記憶する。ディスク405としては、例えば、磁気ディスク、光ディスクなどが挙げられる。なお、サーバ201は、上述した構成部のほか、例えば、キーボード、マウス、ディスプレイなどを有することにしてもよい。
(アカウントアグリゲーション情報DB220の記憶内容)
つぎに、情報提供装置101が有するアカウントアグリゲーション情報DB220の記憶内容について説明する。アカウントアグリゲーション情報DB220は、例えば、図3に示した情報提供装置101のメモリ302、ディスク304などの記憶装置により実現される。
図5は、アカウントアグリゲーション情報DB220の記憶内容の一例を示す説明図である。図5において、アカウントアグリゲーション情報DB220は、ID、PW、ログインURLおよびデータURLのフィールドを有する。各フィールドに情報を設定することで、アカウントアグリゲーション情報(アカウントアグリゲーション情報500−1〜500−7)がレコードとして記憶される。
ここで、ID(identification)は、サイトSのユーザを識別する識別子である。PW(password)は、サイトSにログインするためのユーザのパスワードである。ログインURLは、サイトSにログインするためのWebページ(いわゆる、ログイン画面)を表示するためのURLである。
データURLは、一覧画面に表示するサイトSの情報を含むWebページを表示するためのURLである。一覧画面は、複数のサイトSの情報を集約して表示する画面である。ここでは、データURLは、CGI(Common Gateway Interface)スクリプトのURLである。
例えば、アカウントアグリゲーション情報500−1は、ID「12345」、PW「P111111」、ログインURL「A.html」およびデータURL「A/12345.cgi」を示す。
以下の説明では、一覧画面に表示するサイトSの情報を「目的データ」と表記する場合がある。また、目的データを含むWebページを「目的ページ」と表記する場合がある。
(一覧情報DB230の記憶内容)
つぎに、情報提供装置101が有する一覧情報DB230の記憶内容について説明する。一覧情報DB230は、例えば、情報提供装置101のメモリ302、ディスク304などの記憶装置により実現される。
図6は、一覧情報DB230の記憶内容の一例を示す説明図である。図6において、一覧情報DB230は、データURL、座標(左上/右下)、データ属性および一覧位置のフィールドを有する。各フィールドに情報を設定することで、一覧情報(例えば、一覧情報600−1〜600−5)がレコードとして記憶される。
ここで、データURLは、サイトSの目的ページを表示するためのURLである。座標(左上/右下)は、目的ページの画面における目的データを含む領域Tの位置を示す情報である。ここでは、領域Tが矩形であり、座標(左上/右下)は、領域Tの左上の座標(x座標,y座標)と右下の座標(x座標,y座標)を示す。
データ属性は、目的データの属性である。データ属性としては、例えば、数値、漢字、かな、カナ、アルファベットなどがある。一覧位置は、一覧画面におけるサイトSの目的データを表示する位置を示す情報である。ここでは、一覧位置は、一覧画面内のボックス(例えば、図7に示すボックスB1〜B3)の番号を示す。
例えば、一覧情報600−1は、データURL「A/12345.cgi」、座標(左上/右下)「100,150/200,200」、データ属性「数値」および一覧位置「1」を示す。
(一覧設定画面の画面例)
つぎに、情報提供装置101のディスプレイ305に表示される一覧設定画面の画面例について説明する。一覧設定画面は、複数のサイトSの目的データを表示する一覧画面の画面構成や掲載内容を設定する画面である。
図7は、一覧設定画面の画面例を示す説明図である。図7において、一覧設定画面700は、一覧画面に表示する目的データの項目名および表示位置を設定する画面である。一覧設定画面700において、図3に示したキーボード307やマウス308を用いたユーザの操作入力により、一覧画面に表示する目的データの項目名を設定することができる。
図7の例では、一覧画面に表示する目的データの項目名「年金加入月数」、「年金受給(見込み)額」および「X銀行の預金残高」が設定されている。なお、「年金加入月数」と「年金受給(見込み)額」は、ある年金サイトの情報である。また、「X銀行の預金残高」は、ある銀行サイトの情報である。
また、一覧設定画面700において、ユーザの操作入力により、目的データを表示するボックスを設定することができる。図7の例では、項目名「年金加入月数」の目的データを表示するボックスB1、項目名「年金受給(見込み)額」の目的データを表示するボックスB2および項目名「X銀行の預金残高」の目的データを表示するボックスB3が設定されている。
(領域初期設定画面の画面例)
つぎに、情報提供装置101のディスプレイ305に表示される領域初期設定画面の画面例について説明する。領域初期設定画面は、目的ページの画面における目的データを含む領域Tを設定する画面である。
図8は、領域初期設定画面の画面例を示す説明図である。図8において、領域初期設定画面800は、年金サイトの厚生年金情報ページの画面における目的データを含む領域Tを設定する画面である。領域初期設定画面800には、年金サイトの厚生年金情報ページの画面の画像データ810が表示されている。
領域初期設定画面800において、ユーザの操作入力により、画像データ810上の目的データを含む範囲を選択することにより、厚生年金情報ページの画面における目的データを含む領域Tを設定することができる。図8の例では、厚生年金情報ページの画面における目的データを含む領域T1,T2が設定されている。
ここで、領域T1は、厚生年金情報ページの加入月数を示す数字列を含む領域である。領域T2は、厚生年金情報ページの取得年金額(見込み)を示す数字列を含む領域である。また、領域初期設定画面800において、ユーザの操作入力により、設定完了ボタン820がクリック(押下)されると、領域Tの設定が完了する。
(一覧画面の画面例)
つぎに、情報提供装置101のディスプレイ305に表示される一覧画面の画面例について説明する。一覧画面は複数のサイトSの目的データを集約して表示する画面である。
図9は、一覧画面の画面例を示す説明図である。図9において、一覧画面900は、年金サイトの厚生年金情報ページの目的データと、銀行サイトの口座情報ページの目的データとを集約して表示する画面である。具体的には、一覧画面900には、年金サイトの厚生年金情報ページの加入月数がボックスB1に表示され、年金受給(見込み)額がボックスB2に表示されている。
また、一覧画面900には、銀行サイトの口座情報ページの預金残高がボックスB3に表示されている。一覧画面900によれば、ユーザは、年金サイトの厚生年金情報ページの加入月数、年金受給(見込み)額および銀行サイトの口座情報ページの預金残高を一目で確認することができる。
(情報提供装置101の機能的構成例)
図10は、情報提供装置101の機能的構成例を示すブロック図である。図10において、情報提供装置101は、受付部1001と、取得部1002と、登録部1003と、表示制御部1004と、認識部1005と、判断部1006と、を含む構成である。受付部1001〜判断部1006は制御部となる機能であり、具体的には、例えば、図3に示したメモリ302、ディスク304などの記憶装置に記憶されたプログラムをCPU301に実行させることにより、または、I/F306により、その機能を実現する。各機能部の処理結果は、例えば、メモリ302、ディスク304などの記憶装置に記憶される。
<新規登録要求を受け付けた場合>
まず、新規登録要求を受け付けた場合の各機能部の処理内容について説明する。新規登録要求は、一覧画面に表示する目的データの新規登録要求である。
受付部1001は、新規登録要求を受け付ける。具体的には、例えば、受付部1001は、キーボード307やマウス308を用いたユーザの操作入力により、新規登録要求を受け付ける。また、受付部1001は、外部のコンピュータから新規登録要求を受信することにより、新規登録要求を受け付けることにしてもよい。
取得部1002は、新規登録要求を受け付けたことに応じて、サイトSのID、PW、ログインURLおよびデータURLを取得する。具体的には、例えば、取得部1002は、ユーザの操作入力により、サイトSのID、PW、ログインURLおよびデータURLを取得する。この際、取得部1002は、ユーザの操作入力によって目的ページまで画面遷移させることにより、目的ページのデータURLを取得することにしてもよい。
また、サイトSのID、PW、ログインURLおよびデータURLは、新規登録要求に含まれていてもよい。この場合、取得部1002は、受け付けられた新規登録要求から、サイトSのID、PW、ログインURLおよびデータURLを取得する。
登録部1003は、取得されたサイトSのID、PW、ログインURLおよびデータURLをアカウントアグリゲーション情報DB220に登録する。具体的には、例えば、登録部1003は、アカウントアグリゲーション情報DB220の各フィールドに、取得されたサイトSのID、PW、ログインURLおよびデータURLを設定する。これにより、アカウントアグリゲーション情報DB220に新たなアカウントアグリゲーション情報が新規登録される。
取得部1002は、目的ページの画面の画像データを取得する。具体的には、例えば、まず、取得部1002は、取得したサイトSのログインURLを用いて、サイトSのログイン画面にアクセスする。そして、取得部1002は、取得したサイトSのID、PWを用いて、サイトSにログインする。つぎに、取得部1002は、取得したサイトSのデータURLを用いて、サイトSの目的ページのHTMLデータを取得する。そして、取得部1002は、取得したHTMLデータに基づいて、目的ページの画面をキャプチャすることにより、目的ページの画面の画像データを取得する。
表示制御部1004は、取得された目的ページの画面の画像データを出力する。具体的には、例えば、表示制御部1004は、目的ページの画面の画像データを含む領域初期設定画面(例えば、図8に示した領域初期設定画面800)をディスプレイ305に表示する。
受付部1001は、出力された目的ページの画面の画像データ上の目的データを含む領域Tの選択を受け付ける。具体的には、例えば、受付部1001は、領域初期設定画面800におけるユーザの操作入力により、画像データ810(図8参照)上の目的データを含む領域T(例えば、領域T1,T2)の選択を受け付ける。
取得部1002は、選択された領域Tの位置情報を取得する。具体的には、例えば、取得部1002は、選択された領域Tの左上の座標(x座標,y座標)と右下の座標(x座標,y座標)を取得する。また、取得部1002は、目的データのデータ属性と一覧位置を取得する機能を有する。具体的には、例えば、取得部1002は、ユーザの操作入力により、目的データのデータ属性(例えば、数値、漢字、かな、カナ、アルファベットなど)と一覧位置(例えば、一覧画面内のボックスの番号)を取得する。
登録部1003は、目的ページのデータURLと対応付けて、取得された領域Tの位置情報、目的データのデータ属性および一覧位置を一覧情報DB230に登録する。具体的には、例えば、登録部1003は、一覧情報DB230の各フィールドに、目的ページのデータURL、領域Tの座標、目的データのデータ属性および一覧位置を設定する。これにより、一覧情報DB230に新たな一覧情報が新規登録される。
<一覧表示要求を受け付けた場合>
つぎに、一覧表示要求を受け付けた場合の各機能部の処理内容について説明する。一覧表示要求は、複数のサイトSの目的データを集約して表示する一覧画面(例えば、図9に示した一覧画面900)の表示要求である。
受付部1001は、一覧表示要求を受け付ける。具体的には、例えば、受付部1001は、ユーザの操作入力により、一覧表示要求を受け付ける。また、受付部1001は、外部のコンピュータから一覧表示要求を受信することにより、一覧表示要求を受け付けることにしてもよい。
取得部1002は、一覧表示要求を受け付けたことに応じて、目的ページの画面の画像データを取得する。具体的には、例えば、まず、取得部1002は、アカウントアグリゲーション情報DB220からアカウントアグリゲーション情報(レコード)を取得する。つぎに、取得部1002は、取得したアカウントアグリゲーション情報のログインURLを用いて、サイトSのログイン画面にアクセスする。そして、取得部1002は、取得したアカウントアグリゲーション情報のID、PWを用いて、サイトSにログインする。つぎに、取得部1002は、取得したアカウントアグリゲーション情報のデータURLを用いて、サイトSの目的ページのHTMLデータを取得する。そして、取得部1002は、取得したHTMLデータに基づいて、目的ページの画面をキャプチャすることにより、目的ページの画面の画像データを取得する。
認識部1005は、取得された目的ページの画面の画像データから抽出した領域Tの画像データの文字認識処理を行う。具体的には、例えば、まず、認識部1005は、一覧情報DB230から、取得したアカウントアグリゲーション情報のデータURLに対応する一覧情報を取得する。つぎに、認識部1005は、目的ページの画面の画像データから、取得した一覧情報の座標(左上/右下)により特定される領域Tの画像データを抽出する。そして、認識部1005は、抽出した領域Tの画像データに対してOCR処理を行う。
判断部1006は、領域Tの画像データの文字認識処理の処理結果に基づいて、文字認識処理により文字が認識されたか否かを判断する。具体的には、例えば、判断部1006は、領域Tの画像データから文字が認識されなかった、あるいは、領域Tの画像データの一部分が文字として認識されなかった場合に、文字認識処理により文字が認識されなかったと判断する。
表示制御部1004は、文字認識処理により文字を認識できなかった場合に、取得された目的ページの画面の画像データ上の、領域Tの位置情報により特定される位置に、領域Tを示す情報を重畳して出力する。具体的には、例えば、表示制御部1004は、取得された一覧情報の座標(左上/右下)により特定される画面の画像データ上の位置に領域Tを再設定可能なアイテムを重畳して表示する領域再設定画面をディスプレイ305に表示する。
ここで、領域Tを再設定可能なアイテムとは、ユーザの操作入力により、領域Tの範囲を変更可能な画像データである。例えば、領域Tを再設定可能なアイテムは、一覧情報の座標(左上/右下)により特定される領域Tと同じ大きさの範囲枠である。ユーザの操作入力により、領域Tを再設定可能なアイテムを選択することで、領域Tの範囲を拡大、縮小したり、領域Tを移動させたりできる。なお、領域再設定画面の画面例については、図11を用いて後述する。
これにより、目的ページの画面構成や掲載内容が変更されて領域Tの文字を認識できなくなった場合に、変更後の目的ページの画面における目的データを含む領域Tを再設定するための領域再設定画面をディスプレイ305に表示することができる。
受付部1001は、出力された目的ページの画面の画像データ上の目的データを含む領域Tの選択を受け付ける。具体的には、例えば、受付部1001は、後述する領域再設定画面1100におけるユーザの操作入力により、画像データ1110(図11参照)上の目的データを含む領域Tの選択を受け付ける。
取得部1002は、選択された領域Tの位置情報を取得する。具体的には、例えば、取得部1002は、領域再設定画面1100(図11参照)において選択された領域Tの左上の座標(x座標,y座標)と右下の座標(x座標,y座標)を取得する。
登録部1003は、取得された領域Tの位置情報によって、目的ページのデータURLと対応付けて予め記録された領域Tの位置情報を更新する。具体的には、例えば、登録部1003は、取得された領域Tの座標(左上/右下)を、目的ページのデータURLに対応する一覧情報DB230内の一覧情報の座標(左上/右下)に上書きする。これにより、一覧情報DB230内の一覧情報が更新される。
また、判断部1006は、文字認識処理により文字が認識された場合、当該文字の属性が、領域Tの位置情報と対応付けて予め記録された文字の属性と一致するか否かを判断することにしてもよい。ここで、文字の属性とは、例えば、数値、漢字、かな、カナ、アルファベットなどのデータ属性である。具体的には、例えば、判断部1006は、文字認識処理により認識された文字のデータ属性が、目的ページのデータURLに対応する一覧情報DB230内の一覧情報のデータ属性と一致するか否かを判断する。
また、表示制御部1004は、文字の属性が一致しない場合に、取得された目的ページの画面の画像データ上の、領域Tの位置情報により特定される位置に、領域Tを示す情報を重畳して出力することにしてもよい。これにより、目的ページの画面構成や掲載内容が変更されて領域Tの文字のデータ属性が変わった場合に、変更後の目的ページの画面における目的データを含む領域Tを再設定するための領域再設定画面をディスプレイ305に表示することができる。
表示制御部1004は、一覧画面における、領域Tの位置情報と対応付けて予め記録された位置に、認識部1005によって認識された文字を挿入した一覧画面を出力する。具体的には、例えば、表示制御部1004は、文字認識処理により認識された文字のデータ属性が、予め記録された文字のデータ属性と一致する場合に、一覧画面を出力することにしてもよい。
より詳細に説明すると、例えば、まず、表示制御部1004は、一覧設定画面700(図7参照)のhtmlデータに基づいて、目的データが挿入されていない一覧画面900のhtmlデータを生成する。つぎに、表示制御部1004は、目的ページのデータURLに対応する一覧情報DB230内の一覧情報の一覧位置を特定する。そして、表示制御部1004は、特定した一覧位置に、認識されたデータを挿入した一覧画面900のhtmlデータを生成してディスプレイ305に表示する。これにより、複数のサイトSの目的データを集約して表示する一覧画面をディスプレイ305に表示することができる。
なお、上述した説明では、情報提供装置101が各機能部1001〜1006を有することにしたが、サーバ201が各機能部1001〜1006を有することにしてもよい。具体的には、例えば、必要な機能を必要な分だけサービスとして情報提供装置101に利用できるようにしたSaaS(Software as a Service)により、システム200を実現することにしてもよい。
(領域再設定画面の画面例)
つぎに、情報提供装置101のディスプレイ305に表示される領域再設定画面の画面例について説明する。領域再設定画面は、目的ページの画面における目的データを含む領域Tを再設定する画面である。
図11は、領域再設定画面の画面例を示す説明図である。図11において、領域再設定画面1100は、年金サイトの厚生年金情報ページの画面における目的データを含む領域Tを再設定する画面である。領域再設定画面1100には、年金サイトの厚生年金情報ページの画面の画像データ1110が表示されている。
領域再設定画面1100において、ユーザの操作入力により、画像データ1110上のアイテム1120,1130をクリックすることにより、厚生年金情報ページの画面における目的データを含む領域Tを再設定することができる。ここで、アイテム1120は、領域T1(図8参照)の範囲を変更可能な画像データである。また、アイテム1130は、領域T2(図8参照)の範囲を変更可能な画像データである。
図11の例では、ユーザの操作入力により、アイテム1120がドラッグ&ドロップされて、厚生年金情報ページの画面における目的データ「加入月数」を示す数字列を含む領域T1が再設定されている。また、ユーザの操作入力により、アイテム1130がドラッグ&ドロップされて、厚生年金情報ページの画面における目的データ「取得年金額(見込み)」を示す数字列を含む領域T2が再設定されている。また、領域再設定画面1100において、ユーザの操作入力により、設定完了ボタン1140がクリック(押下)されると、領域Tの再設定が完了する。
このように、領域再設定画面1100によれば、年金サイトの厚生年金情報ページの画面における目的データを含む領域T1,T2を再設定することができる。また、領域再設定画面1100によれば、年金サイトの厚生年金情報ページに設定された複数の領域T1,T2を一括して修正することができるため、領域T1,T2の設定変更にかかる手間を省いてユーザの利便性の向上を図ることができる。また、アイテム1120,1130によれば、どのような状態で意図した情報が取得できなくなっているのかをユーザに把握しやすくさせて、領域T1,T2を修正しやすくすることができる。
(情報提供装置101の情報提供処理手順)
つぎに、情報提供装置101の情報提供処理手順について説明する。
図12は、情報提供装置101の情報提供処理手順の一例を示すフローチャートである。図12のフローチャートにおいて、まず、情報提供装置101は、新規登録要求を受け付けたか否かを判断する(ステップS1201)。
ここで、新規登録要求を受け付けた場合(ステップS1201:Yes)、情報提供装置101は、新規登録処理を実行して(ステップS1202)。本フローチャートによる一連の処理を終了する。新規登録処理の具体的な処理手順については、図13のフローチャートを用いて後述する。
一方、新規登録要求を受け付けていない場合(ステップS1201:No)、情報提供装置101は、一覧表示要求を受け付けたか否かを判断する(ステップS1203)。ここで、一覧表示要求を受け付けていない場合(ステップS1203:No)、情報提供装置101は、ステップS1201に戻る。
一方、一覧表示要求を受け付けた場合(ステップS1203:Yes)、情報提供装置101は、一覧表示処理を実行して(ステップS1204)。本フローチャートによる一連の処理を終了する。一覧表示処理の具体的な処理手順については、図14のフローチャートを用いて後述する。
<新規登録処理の具体的処理手順>
つぎに、図12に示したステップS1202の新規登録処理の具体的な処理手順について説明する。
図13は、新規登録処理の具体的処理手順の一例を示すフローチャートである。図13のフローチャートにおいて、まず、情報提供装置101は、サイトSのID、PW、ログインURLおよびデータURLを取得する(ステップS1301)。
そして、情報提供装置101は、取得したサイトSのID、PW、ログインURLおよびデータURLをアカウントアグリゲーション情報DB220に登録する(ステップS1302)。これにより、アカウントアグリゲーション情報DB220に新たなアカウントアグリゲーション情報が新規登録される。
つぎに、情報提供装置101は、取得したサイトSのID、PW、ログインURLおよびデータURLを用いて、サイトSの目的ページのhtmlデータを取得する(ステップS1303)。そして、情報提供装置101は、取得したhtmlデータに基づいて、目的ページをキャプチャすることにより、目的ページの画像データを取得する(ステップS1304)。
つぎに、情報提供装置101は、取得した目的ページの画像データを含む領域初期設定画面をディスプレイ305に表示する(ステップS1305)。そして、情報提供装置101は、領域初期設定画面において、ユーザの操作入力により、目的ページの画像データ上の目的データを含む領域Tが選択されたか否かを判断する(ステップS1306)。
ここで、情報提供装置101は、領域Tが選択されるのを待つ(ステップS1306:No)。そして、領域Tが選択された場合(ステップS1306:Yes)、情報提供装置101は、選択された領域Tの位置情報を取得する(ステップS1307)。領域Tの位置情報は、目的ページの画像データにおける領域Tの左上の座標と右下の座標である。
つぎに、情報提供装置101は、ユーザの操作入力により、目的データのデータ属性と一覧位置を取得したか否かを判断する(ステップS1308)。ここで、情報提供装置101は、目的データのデータ属性と一覧位置を取得するのを待つ(ステップS1308:No)。
そして、目的データのデータ属性と一覧位置を取得した場合(ステップS1308:Yes)、情報提供装置101は、目的ページのデータURLと対応付けて、取得した位置情報、データ属性および一覧位置を一覧情報DB230に登録して(ステップS1309)、新規登録処理を呼び出したステップに戻る。これにより、一覧情報DB230に新たな一覧情報が新規登録される。
<一覧表示処理の具体的処理手順>
つぎに、図12に示したステップS1204の一覧表示処理の具体的な処理手順について説明する。
図14は、一覧表示処理の具体的処理手順の一例を示すフローチャートである。図14のフローチャートにおいて、まず、情報提供装置101は、目的データが挿入されていない一覧画面のhtmlデータを生成する(ステップS1401)。
つぎに、情報提供装置101は、アカウントアグリゲーション情報DB220のレコード数nを取得して(ステップS1402)、「i=1」とする(ステップS1403)。そして、情報提供装置101は、目的データ設定処理を実行する(ステップS1404)。目的データ設定処理の具体的な処理手順については、図15のフローチャートを用いて後述する。
つぎに、情報提供装置101は、「i」をインクリメントして(ステップS1405)、「i」が「n」より大きくなったか否かを判断する(ステップS1406)。ここで、「i」が「n」以下の場合(ステップS1406:No)、情報提供装置101は、ステップS1404に戻る。
一方、「i」が「n」より大きくなった場合(ステップS1406:Yes)、情報提供装置101は、一覧画面のhtmlデータをディスプレイ305に表示して(ステップS1407)、一覧表示処理を呼び出したステップに戻る。
これにより、複数のサイトSの目的データを集約した一覧画面(例えば、一覧画面900)をディスプレイ305に表示することができる。
<目的データ設定処理の具体的処理手順>
つぎに、図14に示したステップS1404の目的データ設定処理の具体的な処理手順について説明する。
図15は、目的データ設定処理の具体的処理手順の一例を示すフローチャートである。図15のフローチャートにおいて、まず、情報提供装置101は、アカウントアグリゲーション情報DB220のi番目のレコード(以下、「レコードRa」と称する)を取得する(ステップS1501)。
つぎに、情報提供装置101は、取得したレコードRaのログインURLを用いて、サイトSのログイン画面にアクセスし、レコードRaのID、PWを用いて、サイトSにログインする(ステップS1502)。そして、情報提供装置101は、レコードRaのデータURLを用いて、サイトSの目的ページのhtmlデータを取得する(ステップS1503)。
つぎに、情報提供装置101は、取得したhtmlデータに基づいて、目的ページをキャプチャすることにより、目的ページの画像データを取得する(ステップS1504)。そして、情報提供装置101は、一覧情報DB230から、取得したレコードRaのデータURLに対応するレコード(以下、「レコードRb」と称する)を取得する(ステップS1505)。
なお、レコードRaのデータURLに対応するレコードRbが複数存在する場合には、情報提供装置101は、一覧情報DB230から複数のレコードRbを取得する。
つぎに、情報提供装置101は、取得した目的ページの画像データから、取得したそれぞれのレコードRbの座標(左上/右下)により特定される領域Tの画像データを抽出して、それぞれの領域Tの画像データのOCR処理を行う(ステップS1506)。そして、情報提供装置101は、それぞれのOCR処理により得られたデータから文字が認識されたか否かを判断する(ステップS1507)。
ここで、文字が認識された場合(ステップS1507:Yes)、情報提供装置101は、それぞれのOCR処理により得られたデータのデータ属性を特定する(ステップS1508)。そして、情報提供装置101は、それぞれ特定したデータ属性が、それぞれのレコードRbのデータ属性と一致するか否かを判断する(ステップS1509)。
ここで、データ属性が一致する場合(ステップS1509:Yes)、情報提供装置101は、それぞれのレコードRbの一覧位置に基づいて、一覧画面のhtmlデータに、OCR処理によりそれぞれ得られたデータを挿入して(ステップS1510)、目的データ設定処理を呼び出したステップに戻る。これにより、予め設定された一覧位置にサイトSの目的データを埋め込んだ一覧画面のhtmlデータを生成することができる。
また、ステップS1507において、文字が認識されなかった場合(ステップS1507:No)、情報提供装置101は、領域再設定画面表示処理を実行して(ステップS1511)、ステップS1510に移行する。領域再設定画面表示処理の具体的な処理手順については、図16のフローチャートを用いて後述する。
また、ステップS1509において、データ属性が一致しない場合(ステップS1509:No)、情報提供装置101は、ステップS1511に移行する。
<領域再設定画面表示処理の具体的処理手順>
つぎに、図15に示したステップS1511の領域再設定画面表示処理の具体的な処理手順について説明する。
図16は、領域再設定画面表示処理の具体的処理手順の一例を示すフローチャートである。図16のフローチャートにおいて、まず、情報提供装置101は、目的ページのhtmlデータに基づいて、目的ページをキャプチャすることにより、目的ページの画像データを取得する(ステップS1601)。
つぎに、情報提供装置101は、それぞれのレコードRbの座標(左上/右下)により特定される、目的ページの画像データ上の位置にそれぞれ領域Tを再設定可能なアイテムを重畳して表示する領域再設定画面をディスプレイ305に表示する(ステップS1602)。
そして、情報提供装置101は、領域再設定画面において、ユーザの操作入力により、目的ページの画像データ上の目的データを含む領域Tがそれぞれ選択されたか否かを判断する(ステップS1603)。ここで、情報提供装置101は、領域Tが選択されるのを待つ(ステップS1603:No)。
そして、領域Tが選択された場合(ステップS1603:Yes)、情報提供装置101は、選択されたそれぞれの領域Tの位置情報を取得する(ステップS1604)。領域Tの位置情報は、目的ページの画像データにおける領域Tの左上の座標と右下の座標である。
つぎに、情報提供装置101は、それぞれ取得した領域Tの位置情報を、それぞれ対応するレコードRbに上書きすることにより、一覧情報DB230を更新する(ステップS1605)。これにより、目的ページの画面構成や掲載内容の変更に合わせて、一覧情報DB230の記憶内容を更新することができる。
そして、情報提供装置101は、目的ページの画像データから、取得したそれぞれの領域Tの位置情報により特定される領域Tの画像データを抽出して、それぞれの領域Tの画像データのOCR処理を行って(ステップS1606)、領域再設定画面表示処理を呼び出したステップに戻る。
なお、レコードRaのデータURLに対応する複数のレコードRbを一括して処理した場合、アカウントアグリゲーション情報DB220内のレコードRaとデータURLが同一のレコードについて、図14に示したステップS1404の目的データ設定処理をスキップすることができる。これにより、一覧表示処理にかかる情報提供装置101の処理負荷を軽減させることができる。
以上説明したように、実施の形態にかかる情報提供装置101によれば、取得したサイトSの画面の画像データから抽出した領域Tの画像データの文字認識処理を行うことができる。また、情報提供装置101によれば、文字認識処理により文字を認識できなかった場合、取得したサイトSの画面の画像データ上の、予め記録された領域Tの位置情報により特定される位置に、領域Tを再設定可能なアイテムを重畳して出力することができる。
これにより、文字認識処理により文字を認識できたか否かによって、目的ページの画面構成や掲載内容の変更によりユーザの意図通りの情報を取得できなくなったか否かを判断することができる。また、ユーザの意図通りの情報を取得できなくなった場合に、目的ページのどの部分の情報を取得するのかについての再設定をしやすくして設定変更にかかる手間を削減することができる。
また、情報提供装置101によれば、出力した目的ページの画像データ上に設定された領域Tの位置情報によって、予め記録された領域Tの位置情報を更新することができる。これにより、目的ページの画面構成や掲載内容の変更に合わせて、一覧情報DB230の記憶内容を更新することができる。
また、情報提供装置101によれば、文字認識処理により文字が認識された場合、当該文字の属性が、領域Tの位置情報と対応付けて予め記録された文字の属性と一致するか否かを判断することができる。また、情報提供装置101によれば、予め記録された文字の属性と一致しない場合に、取得したサイトSの画面の画像データ上の、予め記録された領域Tの位置情報により特定される位置に、領域Tを再設定可能なアイテムを重畳して出力することができる。
これにより、文字認識処理により文字が認識されても、認識された文字のデータ属性が予め記録されたデータ属性と異なる場合は、ユーザの意図通りの情報を取得できなくなったと判断して、目的ページの画像データに領域Tを再設定可能なアイテムを重畳して出力することができる。
また、情報提供装置101によれば、予め記録された文字の属性と一致する場合には、領域Tの位置情報と対応付けて予め記録された一覧位置に、文字認識処理により認識された文字を挿入した一覧画面を出力することができる。これにより、複数のサイトSの目的データを集約した一覧画面(例えば、一覧画面900)をディスプレイ305に表示することができる。
なお、アカウントアグリゲーション情報DB220、一覧情報DB230のデータURLをcgiスクリプトのURLとしたが、これに限らない。ネットワーク上に存在するデータの所在を特定しアクセスできるURLであればよい。また、一覧情報DB230のデーザ属性はユーザの操作入力により取得するものに限らない。新規登録処理時、再設定時に取得部1002が自動認識し設定してもよい。
なお、本実施の形態で説明した情報提供方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本情報提供プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本情報提供プログラムは、インターネット等のネットワークを介して配布してもよい。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)コンピュータに、
予め記録された、サイトの識別情報と前記サイトの画面を出力した際に設定された領域の位置情報とに基づいて、取得した前記サイトの画面の画像データから抽出した前記領域の画像データの文字認識処理を行い、
前記文字認識処理により文字を認識できなかった場合、取得した前記サイトの画面の画像データ上の、前記位置情報により特定される位置に、前記領域を示す情報を重畳して出力する、
処理を実行させることを特徴とする情報提供プログラム。
(付記2)前記出力する処理は、
前記位置情報により特定される位置に、前記領域を再設定可能なアイテムを重畳して出力することを特徴とする付記1に記載の情報提供プログラム。
(付記3)前記コンピュータに、
出力した前記サイトの画面の画像データ上に設定された領域の位置情報によって、前記予め記録された前記領域の位置情報を更新する処理を実行させることを特徴とする付記1または2に記載の情報提供プログラム。
(付記4)前記コンピュータに、
前記文字認識処理により文字が認識された場合、当該文字の属性が、前記領域の位置情報と対応付けて予め記録された文字の属性と一致するか否かを判断する処理を実行させ、
前記出力する処理は、
前記予め記録された文字の属性と一致しない場合に、前記サイトの画面の画像データ上の、前記位置情報により特定される位置に、前記領域を示す情報を重畳して出力することを特徴とする付記1〜3のいずれか一つに記載の情報提供プログラム。
(付記5)前記コンピュータに、
前記予め記録された文字の属性と一致する場合には、複数のサイトの情報を集約して表示する一覧画面における、前記領域の位置情報と対応付けて予め記録された位置に、前記文字認識処理により認識された文字を挿入した前記一覧画面を出力する処理を実行させることを特徴とする付記4に記載の情報提供プログラム。
(付記6)コンピュータが、
予め記録された、サイトの識別情報と前記サイトの画面を出力した際に設定された領域の位置情報とに基づいて、取得した前記サイトの画面の画像データから抽出した前記領域の画像データの文字認識処理を行い、
前記文字認識処理により文字を認識できなかった場合、取得した前記サイトの画面の画像データ上の、前記位置情報により特定される位置に、前記領域を示す情報を重畳して出力する、
処理を実行することを特徴とする情報提供方法。
(付記7)サイトの識別情報と前記サイトの画面を出力した際に設定された領域の位置情報とを対応付けて記憶する記憶部と、
前記記憶部の記憶内容に基づいて、取得した前記サイトの画面の画像データから抽出した前記領域の画像データの文字認識処理を行い、前記文字認識処理により文字を認識できなかった場合、取得した前記サイトの画面の画像データ上の、前記位置情報により特定される位置に、前記領域を示す情報を重畳して出力する制御部と、
を有することを特徴とする情報提供装置。
(付記8)コンピュータに、
予め記録された、サイトの識別情報と前記サイトの画面を出力した際に設定された領域の位置情報とに基づいて、取得した前記サイトの画面の画像データから抽出した前記領域の画像データの文字認識処理を行い、
前記文字認識処理により文字を認識できなかった場合、取得した前記サイトの画面の画像データ上の、前記位置情報により特定される位置に、前記領域を示す情報を重畳して出力する、
処理を実行させる情報提供プログラムを記録したことを特徴とする前記コンピュータに読み取り可能な記録媒体。