JP2004258911A - サーバ、情報収集方法及びプログラム - Google Patents

サーバ、情報収集方法及びプログラム Download PDF

Info

Publication number
JP2004258911A
JP2004258911A JP2003047983A JP2003047983A JP2004258911A JP 2004258911 A JP2004258911 A JP 2004258911A JP 2003047983 A JP2003047983 A JP 2003047983A JP 2003047983 A JP2003047983 A JP 2003047983A JP 2004258911 A JP2004258911 A JP 2004258911A
Authority
JP
Japan
Prior art keywords
information
user agent
link
url
response
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.)
Granted
Application number
JP2003047983A
Other languages
English (en)
Other versions
JP4007596B2 (ja
Inventor
Takafumi Kinoshita
隆文 木下
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2003047983A priority Critical patent/JP4007596B2/ja
Priority to US10/751,767 priority patent/US7536445B2/en
Publication of JP2004258911A publication Critical patent/JP2004258911A/ja
Application granted granted Critical
Publication of JP4007596B2 publication Critical patent/JP4007596B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】検索ロボットによる情報収集の際に、端末装置の種類に応じて個別の応答を返すサイトに対して、当該サイトが対応する各機種別のコンテンツに関する情報を取得できるようにする。
【解決手段】検索ロボットとサイトとの間のデータ交換を中継するプロキシに備えたリンク展開部13にて、サイトから検索ロボットへの応答を解析し、この応答に含まれるリンクのリンク先がアクセス元である端末装置の種類に応じて個別の応答を返すコンテンツである場合に、リンク先のコンテンツが対応しているユーザエージェントの情報を得る。そして、この情報に基づき、このプロキシに備えたユーザエージェント情報編集部15にて、検索ロボットからサイトへの情報取得要求に対して所定のユーザエージェントから発行された情報取得要求に見せ掛けるためのユーザエージェント情報を付加することにより、かかるユーザエージェントに対応した応答を取得する。
【選択図】 図6

Description

【0001】
【発明の属する技術分野】
本発明は、インターネット等で情報検索に利用される検索エンジンに関し、特にネットワーク上の情報を自動的に収集する検索ロボットに関する。
【0002】
【従来の技術】
今日、インターネットに代表されるコンピュータネットワークの普及により、ネットワークを介して様々なサービスが提供されている。また、ネットワークに接続する端末装置の種類も、パーソナルコンピュータやワークステーションのような高い処理能力を有するコンピュータ装置から、携帯電話、PDA(Personal Digital Assistants)といったコンテンツを受信して表示し簡単な処理を行うに過ぎないものまで様々である。そのため、接続した端末装置(ユーザエージェント)の種類(能力)に応じてコンテンツを動的に作成しサービスを提供するサイト(サーバ)が存在している。
【0003】
端末装置の種類に応じたウェブコンテンツを返すウェブサーバの場合、端末装置からのHTTP(Hypertext Transfer Protocol)リクエストに含まれるUser−Agent HTTPヘッダを参照して当該端末装置の種類を識別することができる。そこで、当該端末装置の能力に応じたウェブコンテンツを生成し返すことができる。端末装置の能力に応じてコンテンツを生成するとは、例えば、端末装置のメモリ容量(すなわち一度に読み込めるデータのサイズ)に応じてコンテンツを切り分け、複数回のダウンロードを行うようにしたり、イメージ表示機能を持たない端末装置に対してイメージを除いたテキストのみのコンテンツを生成したりすることである。
【0004】
また今日、検索サイト(検索エンジン)を用いてネットワーク上の膨大なコンテンツの中から所望のコンテンツを検索し取得することが一般的に行われている。この検索サイトは、予めネットワーク上のコンテンツにアクセスするための情報を取得し保持しておき、端末装置からの検索要求に応じて当該情報を返すものである。今日の主要な検索サイトとして、コンテンツのハイパーリンク(以下、リンク)を辿りながら自動的にネットワーク上のサイトにアクセスし、当該サイトのコンテンツにアクセスするための情報を収集しておき、端末装置からの検索要求に応答するロボット型検索サイトがある(例えば、特許文献1、2参照)。
【0005】
図17は、ロボット型検索サイトの概略構成を説明する図である。
図17に示すように、ロボット型検索サイト1710は、自動的にネットワーク上のサイト1720にアクセスし当該サイトのコンテンツにアクセスするための情報を取得する検索ロボット1711と、検索ロボット1711により取得された情報を登録し蓄積するデータベース1712と、端末装置1730からの検索要求を受け付けてデータベース1712を検索し検索結果を返すサーチエンジン1713とを備える。
【0006】
【特許文献1】
特開2002−215642号公報
【特許文献2】
特開2002−259432号公報
【0007】
【発明が解決しようとする課題】
上記のように、ロボット型検索サイトでは、検索ロボットがネットワーク上のサイトにアクセスし、コンテンツにアクセスするための情報(例えばURL(uniform resource locators))を取得する。しかしながら、上述したようにクライアントである端末装置の種類に応じてコンテンツを動的に作成して応答するサイトに検索ロボットがアクセスした場合、サイト側では検索ロボットからのアクセスとして認識して応答するため、検索ロボットは当該サイトが対応する各機種別のコンテンツに関する情報を取得することができない。また、サイトによっては、不明機種としてエラー処理したり、適当な機種を仮定して処理したりする場合もある。これらは検索サイトの信用の低下を招く原因となり得る。
【0008】
例えば、所定のサイトS1が、5KBのサイズのコンテンツC1を有しており、一度に読み込めるデータサイズが6KBの端末装置Aに対しては、当該5KBのコンテンツをそのまま送り、一度に読み込めるデータサイズが2KBの端末装置Bに対しては当該5KBのコンテンツを2KB、2KB、1KBの3つのコンテンツc01、c02、c03に切り分けて順に送る場合について考える。
ロボット検索(検索ロボットによる検索)時に、サイトにおいて検索ロボットが端末装置Aと判断された場合、当該検索サイトS2のデータベースには、5KBのサイズの元のコンテンツC1のみが登録されることとなる。
この状況で端末装置Bが当該検索サイトS2に対し、所定の検索タームでコンテンツの検索を行い、コンテンツC1がヒットしたものとする。この検索結果にしたがって端末装置BからサイトS1へHTTPリクエストが送られた場合、上述したようにサイトS1からは3分されたコンテンツc01が返される。このとき、ヒットした検索タームがコンテンツc02またはコンテンツc03に存在すると、端末装置Bは、検索サイトS2の検索結果に基づいてアクセスしたにも関わらず、所望の情報を得られないこととなる。
【0009】
上述した特許文献2では、コンテンツの中身を分析して、所定のコンテンツが端末装置の種類に応じてどの程度適切かといった度合いを計算して評価することで、できる限り端末装置の種類にあった検索結果を選別する技術が開示されている。しかしこの特許文献2に開示された技術でも、検索ロボットがコンテンツを収集する時点で端末装置の種類を想定したコンテンツの取得を行うことはなされていない。
【0010】
そこで本発明は、検索ロボットによる情報収集の際に、端末装置の種類に応じて動的にコンテンツを生成して返すサイトに対して、当該サイトが対応する各機種別のコンテンツに関する情報を取得できるようにすることを目的とする。
【0011】
【課題を解決するための手段】
上記の目的を達成する本発明は、次のように構成されたことを特徴とするサーバとして実現される。このサーバは、ネットワーク上のサイトとこのサイトにアクセスして情報を収集する検索ロボットとの間で行われるデータ交換を中継する送受信部と、検索ロボットからサイトへの情報取得要求に対するサイトからの応答を送受信部が受信し、この応答に含まれるリンクのリンク先がアクセス元であるユーザエージェントの種類に応じて個別の応答を返すコンテンツである場合に、そのリンクを展開し、リンク先のコンテンツが対応しているユーザエージェントの情報を取得するリンク展開部と、展開されたリンクに基づいてなされた検索ロボットからの情報取得要求を送受信部が受信した場合に、この情報取得要求に含まれるユーザエージェントの情報を、リンク先のコンテンツが対応しているユーザエージェントの情報に変換するユーザエージェント情報編集部とを備えることを特徴とする。
【0012】
このサーバは、アクセス元であるユーザエージェントの種類に応じて個別の応答を返すコンテンツの位置情報と、このコンテンツが対応しているユーザエージェントの情報とを対応付けて登録したデータベースをさらに備える構成とすることができる。この場合、リンク展開部は、サイトからの応答に含まれるリンクのリンク先の位置情報を引数としてデータベースを検索してユーザエージェントの情報を取得する。また、ユーザエージェント情報編集部は、データベースから得られるユーザエージェントの情報を用いて情報取得要求の情報を変換する。
【0013】
また、本発明の他のサーバは、ネットワーク上のサイトにアクセスして情報を収集する検索ロボットとの間でデータ交換を行う第1の送受信手段と、この第1の送受信手段にて受信された検索ロボットからサイトへの情報取得要求に含まれるユーザエージェント情報を、所定のユーザエージェントから発行された情報取得要求に見せ掛けるための他のユーザエージェント情報に変換する編集手段と、サイトとの間でデータ交換を行い、この編集手段にてユーザエージェント情報を変換された情報取得要求を宛先であるサイトへ送信する第2の送受信手段とを備えることを特徴とする。
【0014】
このサーバは、第2の送受信手段にて受信したサイトから検索ロボットへの応答を解析する解析手段をさらに備える構成とすることができる。この場合、編集手段は、この解析手段の解析によって得られた情報に基づいて所定のユーザエージェントを特定し、情報取得要求のユーザエージェント情報を、特定されたユーザエージェントのユーザエージェント情報に変換する。
さらに好ましくは、このサーバにおいて、解析手段は、応答に含まれるリンクのリンク先がアクセス元であるユーザエージェントの種類に応じて個別の応答を返すコンテンツである場合に、このリンクのリンク先情報を、リンク先のコンテンツが対応しているユーザエージェントを識別するための識別情報を含むダミー情報に置き換えて、第1の送受信手段に前記検索ロボットへ送信させる。そして、編集手段は、このダミー情報を宛先として検索ロボットから発行された情報取得要求を第1の送受信手段が受信した場合に、このダミー情報を本来のリンク先情報に戻し、かつ情報取得要求に含まれるユーザエージェント情報をダミー情報に含まれる識別情報にて特定されるユーザエージェントのユーザエージェント情報に変換する。
【0015】
また、本発明のさらに他のサーバは、ネットワーク上のウェブサイトとこのウェブサイトにアクセスして情報を収集する検索ロボットとの間で行われるデータ交換を中継する送受信部と、検索ロボットからウェブサイトへの情報取得要求に対するこのウェブサイトからの応答を送受信部が受信し、この応答に含まれるリンクのリンク先がアクセス元であるユーザエージェントの種類に応じて個別の応答を返すウェブコンテンツである場合に、この応答に含まれるリンクのリンク先のURLを、このウェブコンテンツが対応しているユーザエージェントに個別に対応する代替URLに置き換えるリンク展開部と、この代替URLを宛先として検索ロボットから発行された情報取得要求を送受信部が受信した場合に、この代替URLを本来のリンク先のURLに置き換えるURL変換部と、この代替URLを宛先として検索ロボットから発行された情報取得要求を送受信部が受信した場合に、情報取得要求のHTTP(Hypertext Transfer Protocol)ヘッダにおけるユーザエージェントの情報を、代替URLに対応するユーザエージェントの情報に変換するユーザエージェント情報編集部とを備えることを特徴とする。
【0016】
以上のサーバは、物理的には、検索ロボットを備えるサーバと同一のサーバマシンに構築しても良いし、サイトを備えるサーバと同一のサーバマシンに構築しても良い。さらに、これらのサーバとは別個にネットワーク上に設けられたサーバマシンに構築する構成とすることもできる。
【0017】
上記の目的を達成するさらに他の本発明は、ネットワーク上のサイトから情報を収集する、次のような情報収集方法として実現することができる。すなわち、この情報収集方法は、所定のサイトへの情報取得要求に対するこのサイトからの応答を受信し、受信した応答に含まれるリンクのリンク先がアクセス元であるユーザエージェントの種類に応じて個別の応答を返すコンテンツである場合に、このリンクを展開し、リンク先のコンテンツが対応しているユーザエージェントの情報を取得する第1のステップと、得られたユーザエージェントの情報に基づいて、ユーザエージェントから発行された情報取得要求に見せ掛けるための情報が付加された情報取得要求をこの応答に含まれるリンクのリンク先へ送信する第2のステップと、リンク先からユーザエージェントの種類に応じた応答を取得する第3のステップとを含むことを特徴とする。
【0018】
本発明による他の情報収集方法は、所定の検索ロボットから所定のサイトへの情報取得要求に対するこのサイトからの応答を受信し、受信した応答に含まれるリンクのリンク先がアクセス元であるユーザエージェントの種類に応じて個別の応答を返すウェブコンテンツである場合に、この応答に含まれるリンクのリンク先のURLを、このウェブコンテンツが対応しているユーザエージェントに個別に対応する代替URLに置き換え、応答の送信先である検索ロボットへ送信する第1のステップと、この代替URLを宛先として検索ロボットから発行された情報取得要求を受信し、この代替URLを本来のリンク先のURLに置き換え、この情報取得要求のHTTP(Hypertext Transfer Protocol)ヘッダにおけるユーザエージェントの情報を、代替URLに対応するユーザエージェントの情報に変換し、このリンク先に送信する第2のステップと、ユーザエージェントの情報を変換された情報取得要求に対するリンク先からの応答を受信し、この応答にユーザエージェントの識別情報を付加して検索ロボットに送信する第3のステップとを含むことを特徴とする。
【0019】
さらに本発明は、コンピュータを制御して上述したサーバとしての機能を実現するプログラムや、コンピュータに上記の情報取得方法の各ステップに対応する処理を実行させるプログラムとしても実現される。このプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録装置に格納して配布したり、ネットワークを介して配信したりすることにより提供することができる。
【0020】
【発明の実施の形態】
以下、添付図面に示す実施の形態に基づいて、この発明を詳細に説明する。
図1は、本発明によるロボット検索の概念を説明する図である。
本発明は、コンテンツを提供するサイト210とロボット検索を行う検索ロボット310との間に、検索ロボット310からの要求およびサイト210からの応答を変換する変換プロキシ10を介在させる。これにより、ロボット検索による情報収集の際に、端末装置の種類に応じて動的にコンテンツを生成して返すサイトから、各機種別のコンテンツに関する情報を取得することを実現する。
【0021】
図2乃至図4は、本発明の実施態様を例示する図である。
図2の例は、変換プロキシ10が、検索ロボット310と共に検索サーバ(検索サイトの機能を提供するサーバ)300に設けられる構成である。この構成では、検索ロボット310は、変換プロキシ10を介してネットワーク上の各サイト210にアクセスする。
図3の例は、変換プロキシ10が、ネットワーク上の所定のプロキシサーバ(中間サイト)100に独立して設けられる構成である。この構成では、検索ロボットが当該中間サイトにアクセスし、変換プロキシ10を経て各サイト210にアクセスする。
図4の例は、変換プロキシ10が、サイト210と共にコンテンツサーバ200に設けられる構成である。この構成では、コンテンツサーバ200のサイト210にアクセスしようとするネットワーク上の各検索ロボット310は、変換プロキシ10を介してサイト210にアクセスする。
【0022】
図5は、図2乃至図4に示した変換プロキシを設けるサーバ(検索サーバ300、プロキシサーバ100及びコンテンツサーバ200)を実現するのに好適なコンピュータ装置のハードウェア構成の例を模式的に示した図である。
図5に示すコンピュータ装置は、演算手段であるCPU(Central Processing Unit:中央処理装置)101と、M/B(マザーボード)チップセット102及びCPUバスを介してCPU101に接続されたメインメモリ103と、同じくM/Bチップセット102及びAGP(Accelerated Graphics Port)を介してCPU101に接続されたビデオカード104と、PCI(Peripheral Component Interconnect)バスを介してM/Bチップセット102に接続されたハードディスク105、ネットワークインターフェイス106及びUSBポート107と、さらにこのPCIバスからブリッジ回路108及びISA(Industry Standard Architecture)バスなどの低速なバスを介してM/Bチップセット102に接続されたフロッピーディスクドライブ109及びキーボード/マウス110とを備える。
なお、図5は本実施の形態を実現するコンピュータ装置のハードウェア構成を例示するに過ぎず、本実施の形態を適用可能であれば、他の種々の構成を取ることができる。例えば、ビデオカード104を設ける代わりに、ビデオメモリのみを搭載し、CPU101にてイメージデータを処理する構成としても良いし、ATA(AT Attachment)などのインターフェイスを介してCD−ROM(Compact Disc Read Only Memory)やDVD−ROM(Digital Versatile Disc Read Only Memory)のドライブを設けても良い。
【0023】
以下に説明する本実施の形態では、インターネット等に代表されるウェブベースのネットワークシステムを例として説明する。すなわち、図1のサイト210には各種のウェブコンテンツ(ウェブページやそのオブジェクト)が保持されており、検索ロボット310は、HTTPリクエストをサイト210に送り、HTTPレスポンスを受け取るものとする。
また本実施の形態において、サイト210は通常のウェブサイトであり、検索ロボット310も従来からウェブ検索に用いられている通常の検索ロボットである。
【0024】
図6は、本実施の形態による変換プロキシ10の機能構成を示すブロック図である。
図6に示すように、変換プロキシ10は、検索ロボット310からサイト210への要求(HTTPリクエスト)及びサイト210から検索ロボット310への応答(HTTPレスポンス)を仲介するための送受信部11と、端末装置の種類に応じて動的にコンテンツを生成するサイト210あるいは動的に生成されるコンテンツのURL(以下、多様性URLと称す)の情報を登録して保持する多様性URLデータベース(DB)12と、サイト210から送られた応答に含まれるコンテンツのリンクを展開する解析手段としてのリンク展開部13と、検索ロボット310から送られた要求に対する編集手段として宛先URLを変換するURL変換部14及び当該要求におけるユーザエージェントの情報を編集するユーザエージェント情報編集部15とを備える。
【0025】
上述したリンク展開部13、URL変換部14及びユーザエージェント情報編集部15は、図5に示したメインメモリ103に展開されたプログラムにてCPU101を制御することにより実現される仮想的なソフトウェアブロックである。CPU101を制御してこれらの機能を実現させるプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記憶媒体に格納して配布したり、ネットワークを介して配信したりすることにより提供される。本実施の形態では、図5に示したネットワークインターフェイス106やフロッピーディスクドライブ109、図示しないCD−ROMドライブなどを介して当該プログラムを入力し、ハードディスク105に格納する。そして、ハードディスク105に格納されたプログラムをメインメモリ103に読み込んで展開し、CPU101にて実行することにより、これらの機能を実現する。
多様性URLデータベース12は、図5に示したメインメモリ103やハードディスク105及びプログラム制御されたCPU101にて実現される。また、送受信部11は、図5に示したネットワークインターフェイス106及びプログラム制御されたCPU101にて実現される。
【0026】
上記の構成において、送受信部11は、検索ロボット310からの要求を受け付け、URL変換部14及びユーザエージェント情報編集部15に渡して処理させた後、処理された要求をサイト210に送信する。また、サイト210からの応答を受け付け、リンク展開部13に渡して処理させた後、処理された応答を検索ロボット310へ送信する。
【0027】
多様性URLデータベース12には、コンテンツの位置情報である多様性URLが登録されると共に、この多様性URLに関して、識別されるべき端末装置の種類、すなわち多様性URLにて特定されるコンテンツ(またはサイト)に対応する端末装置の種類を特定するユーザエージェント情報と、このユーザエージェント情報にて特定される端末装置に個別に対応する代替URLとが登録されている。
多様性URLは、データ形式が文字列、サイズが可変長のデータである。
ユーザエージェント情報は、データ形式が文字列、サイズが可変長のデータであり、HTTPリクエストのUser−Agent HTTPヘッダに記述される値(User−Agent値)である。
代替URLは、データ形式が文字列、サイズが可変長のデータであり、ユーザエージェント情報にて特定される端末装置に個別に対応するコンテンツ(またはサイト)のURLである。
【0028】
図7は、多様性URLデータベース12に登録される情報(登録値)の例を示す図である。
図7を参照すると、例えば多様性URL「www.cp_X.com/page_1.html」は、デバイスA、デバイスBという2つの端末装置に対応しており、これらのユーザエージェント情報に対応して、「www.cp_X.com/page_1.html.for.device_A」と「www.cp_X.com/page_1.html.for.device_B」という2つの代替URLが登録されている。
これらの情報は、予めサイト210あるいはその管理者から取得され登録される。新たに多様性URLが設定されれば、当該多様性URLに関する情報がサイト210あるいはその管理者から与えられ追加登録される。また、多様性URLのサイト210において対応する端末装置の種類が増えたり変更されたりしたときは、新たなユーザエージェント情報が与えられて登録内容が更新される。
【0029】
さらに、多様性URLデータベース12の制御手段は、リンク展開部13、URL変換部14、ユーザエージェント情報編集部15によって利用されるためのアクセス関数として、リンク展開リスト取得関数、URL変換関数およびユーザエージェント情報取得関数を備える。
リンク展開リスト取得関数は、リンク展開部13による参照の際に用いられる関数であり、オリジナルのURLを引数として渡すと、図7に示したようなテーブルからカラム値の一致するレコードを選択し、対応するユーザエージェント情報と代替URLのリストを返す。
URL変換関数は、URL変換部14による参照の際に用いられる関数であり、代替URLを引数として渡すと、図7に示したようなテーブルからカラム値の一致するレコードを選択し、対応するオリジナルのURL(多様性URL)を返す。
ユーザエージェント情報取得関数は、ユーザエージェント情報編集部15による参照の際に用いられる関数であり、代替URLを引数として渡すと、図7に示したようなテーブルからカラム値の一致するレコードを選択し、対応するユーザエージェント情報を返す。
【0030】
リンク展開部13は、サイト210から送られる応答を解析して、当該応答に含まれるリンクから多様性URLを検出し、当該リンクを、対応するユーザエージェント(端末装置)ごとのリンク(以下、ダミーリンクと称す)に展開する。例えば、サイト210から応答として送られたウェブページに機種A、Bという2種類の端末装置に対応した動的なコンテンツへのリンクがある場合を考える。この場合、当該リンクのリンク先であるURLを引数として、リンク展開リスト取得関数にて多様性URLデータベース12を検索する。そして、当該リンクのURLが多様性URLであった場合(ヒットした場合)、当該多様性URLデータベース12に登録されている機種A、Bのユーザエージェント情報と代替URLとを読み出し、当該リンクのURLを各代替URLに書き換える。これにより当該リンクがダミーリンクに置き換えられる。
【0031】
図8は、リンク展開部13の動作を説明するフローチャートである。
図8に示すように、送受信部11にてサイト210からの応答が受信されると、リンク展開部13は当該応答のヘッダ部及びボディ部を読み込んで、例えば図5に示したメインメモリ103の作業領域に格納する(ステップ801)。そして、読み込んだヘッダ部の情報のContent−Typeに基づいてボディ部のデータタイプがテキストかどうかを判断する(ステップ802)。
応答のボディ部のデータタイプがテキストであったならば、次にリンク展開部13は、当該ボディ部(ウェブページ)に、リンク(ハイパーリンク)が存在するかどうかを調べる(ステップ803)。リンクの有無は、アンカータグ“<a>”やフォームタグ“<form>”等のリンクを担うタグを検出することにより調べることができる。そして、リンクが存在するならば、当該リンクに対してダミーリンクへの展開処理を行う(ステップ804)。このリンク展開処理の詳細は後述する(図9)。
【0032】
ボディ部に存在する全てのリンクに対してダミーリンクへの展開処理が終了した後、リンク展開部13は、当該処理による編集結果に基づいて、上記のサイト210から受信した応答を書き換える(ステップ805、806)。そして、書き換えられた応答が、送受信部11により検索ロボット310へ送信される。
ステップ802で応答のボディ部のデータタイプがテキストではないと判断された場合、及びステップ803でボディ部にリンクが存在しなかった場合は、送受信部11にて受信された応答がそのまま送受信部11により検索ロボット310へ送信される。
【0033】
図9は、図8のステップ804のダミーリンクへの展開処理の詳細な内容を説明するフローチャートである。ステップ803で検出された各リンクに対して図9の処理が実行される。
リンク展開部13は、まず、アンカータグ“<a>”やフォームタグ“<form>”等のリンクを担うタグ中からリンク先のURLを切り出し、例えば図5に示したメインメモリ103の作業領域に格納する(ステップ901)。そして、切り出されたURLが多様性URLデータベース12に登録されているかどうかを調べる(ステップ902)。この処理には、上述したリンク展開リスト取得関数が使用される。
【0034】
リンクから切り出されたURLが多様性URLデータベース12に登録されていた場合、リンク展開部13は、当該URLに対応する各ユーザエージェントのユーザエージェント情報及び代替URLのリストを取得する(ステップ903)。そして、この代替URLに基づき、ダミーURLを生成する(ステップ904)。ダミーURLとは、多様性URLデータベース12に登録されている対応ユーザエージェントの代替URLに、当該ユーザエージェント固有の情報(画面表示サイズ、色調等)を加えたものである。したがって、ダミーURLには代替URLが含まれるので、以下の説明では特に必要がある場合を除き、代替URLを区別せずにダミーURLとして説明する。
代替URLに付加されるこれらの情報は、通常、ユーザエージェントに個別に対応したコンテンツにおいて、拡張ヘッダを定義して記述されているので、この拡張ヘッダから読み出して取得することができる。なお、多様性URLデータベース12において、このユーザエージェント固有の情報を含めて代替URLが定義され登録されていれば、多様性URLデータベース12から読み出された代替URLがそのままダミーURLとなり、リンク展開部13においてダミーURLを生成する必要はなくなる。
【0035】
リンクから切り出されたURL(以下、元URLと称す)に対応する全てのユーザエージェントに関してダミーURLを生成した後、リンク展開部13は、メインメモリ103の作業領域に格納されている元URLを生成されたダミーURL群で置き換えて、ダミーリンクへの展開処理を終了する(ステップ905、906)。この際、正常処理済みの戻り値がリターンコードにセットされて、メインの処理(図8)へ戻る。そして、上述したように、応答に記述されたリンク先のURLが、ダミーURL群に書き換えられることとなる(ステップ806参照)。
一方、ステップ902の処理の結果、リンクから切り出されたURLが多様性URLデータベース12に登録されていなかった場合、リンクを展開する必要はないので、そのまま処理が終了する。この際、処理不要の戻り値がリターンコードにセットされて、メインの処理(図8)へ戻る。
【0036】
以上のようにして、サイト210からの応答がユーザエージェントの種類に依存する多様性URLへのリンクを含む場合、このリンクが、対応する個々のユーザエージェントごとのリンク(ダミーリンク)に展開される(すなわち、リンク先の元URL(多様性URL)がダミーURL群に置き換えられる)。そして、先の応答が、この展開されたリンクを含む形で検索ロボット310へ送信されることとなる。
【0037】
URL変換部14は、検索ロボット310から送られる要求がリンク展開部13にて置き換えられたダミーリンクに基づいて発行されたものである場合に、この要求の宛先(ダミーリンクのリンク先)を本来の宛先に戻す。具体的には、当該要求の宛先であるダミーURL中の代替URLを引数とし、URL変換関数にて多様性URLデータベース12を検索する。そして、多様性URLデータベース12に登録されている、当該代替URLに対応するオリジナルのURL(元URL)を読み出し、当該要求の宛先を読み出したURLに書き換える。
【0038】
ユーザエージェント情報編集部15は、検索ロボット310から送られる要求がリンク展開部13にて置き換えられたダミーリンクに基づいて発行されたものである場合に、この要求のヘッダに記述されたユーザエージェント情報を、ダミーリンクが対応しているユーザエージェントのユーザエージェント情報に置き換える。具体的には、当該要求の宛先であるダミーURL中の代替URLを引数とし、ユーザエージェント情報取得関数にて多様性URLデータベース12を検索する。そして、多様性URLデータベース12に登録されている、当該代替URLに対応するユーザエージェント情報を読み出し、User−Agent HTTPヘッダに書き込む。
【0039】
図10は、URL変換部14及びユーザエージェント情報編集部15による動作を説明するフローチャートである。
図10に示すように、送受信部11にて検索ロボット310からの要求が受信されると、URL変換部14は当該要求のヘッダ部及びボディ部を読み込んで、例えば図5に示したメインメモリ103の作業領域に格納する(ステップ1001)。このとき、当該要求のヘッダ部が切り出されて、さらにメインメモリ103の作業領域に格納される。そして、URL変換関数により、ヘッダ部の宛先のURLが多様性URLデータベース12に登録されているかどうかを調べる(ステップ1002)。
当該URLがリンク展開部13にて展開されたダミーURLであれば、多様性URLデータベース12に登録されているので、対応する元URLが返されることとなる。そこで、URL変換部14は、メインメモリ103の作業領域に格納されている要求から切り出されたヘッダ部の宛先のURLを、多様性URLデータベース12から取得した元URLに置き換える(ステップ1003、1004)。そして、ユーザエージェント情報編集部15に処理を移行する。
【0040】
ユーザエージェント情報編集部15は、ユーザエージェント情報取得関数により、ダミーURL(代替URL)に対応するユーザエージェント情報を取得する。そして、メインメモリ103の作業領域に格納されている要求から切り出されたヘッダに含まれるユーザエージェント情報(検索ロボット310がユーザエージェントであることを示す情報)を、多様性URLデータベース12から取得したユーザエージェント情報に置き換えて、URL変換部14に処理を戻す(ステップ1005)。
URL変換部14は、以上のURL変換処理およびユーザエージェント情報編集部15によるユーザエージェント情報の編集処理の結果に基づいて、メインメモリ103の作業領域に格納されている、上記の検索ロボット310から受信した要求のヘッダ情報(宛先及びユーザエージェント情報)を書き換える(ステップ1006)。そして、書き換えられた要求が、送受信部11によりサイト210へ送信される。
【0041】
以上のようにして、検索ロボット310からの要求が、多様性URLが対応する各ユーザエージェントのそれぞれからの要求に見せ掛けて、サイト210へ送信される。これにより、サイト210から、各ユーザエージェントに個別に対応した応答が返され、検索サーバ300に蓄積されることとなる。なお、ユーザエージェントに対応した応答をサイト210から受信して検索ロボット310に送信する際、変換プロキシ10は、当該応答が対応しているユーザエージェントのユーザエージェント情報を、メタタグ“<meta>”を用いて、“<meta name=”keywords” content=”devinfo=機種A”>”、“<meta name=”keywords” content=”devinfo=機種B”>”のように当該応答に埋め込む。これにより、検索サーバ300において、ユーザエージェントと当該応答とを関連付けて格納しておくことができる。なお、ユーザエージェントの種類に応じて異なる内容を返さない(多様性のない)コンテンツに関しては、例えば“<meta name=”keywords” content=”devinfo=ANY”>”といった情報を埋め込んでおく。
【0042】
次に、具体的な動作例を挙げて、本実施の形態による変換プロキシ10の動作を説明する。
図11は、本実施の形態で収集されるコンテンツの構成例を示す図である。
図11に示すように、page_1.htmlとpage_2.htmlという2つのウェブページ(HTMLファイル)からなるコンテンツを想定する。page_1.htmlにはpage_2.htmlへのリンクが張られており、page_2.htmlは、機種A、機種Bという2種類のユーザエージェントに対応して動的に生成されるウェブページである。
【0043】
図12は、図11に示したコンテンツの情報が検索ロボット310にて収集される場合の処理及びデータの流れを説明する図である。
図12に示すように、まず、検索ロボット310からサイト210へ、page_1.htmlの取得要求(要求1)が発行されたものとする。この要求1は、変換プロキシ10を経てサイト210に送られる。そして、サイト210から要求1に対する応答1が返される。応答1の内容はpage_1.htmlである。
変換プロキシ10は、このpage_1.htmlを処理し、page_2.htmlへのリンクがあり、このpage_2.htmlがユーザエージェントの種類に依存するコンテンツである(すなわち、page_2.htmlのURLは多様性URLである)ため、リンク展開部13によりリンク展開処理をおこなう。これにより、応答1は、機種Aに対応するpage_2.htmlへのリンク(page_2_for_A.html)及び機種Bに対応するpage_2.htmlへのリンク(page_2_for_B.html)を持つウェブページを内容とする応答1’に変換されて検索ロボット310へ送られる。
【0044】
検索ロボット310は、受信した応答1’の内容であるウェブページにpage_2_for_A.html及びpage_2_for_B.htmlへの2つのリンクが張られているので、それぞれに対する取得要求を順次発行する。
まず、page_2_for_A.htmlの取得要求(要求2)が発行されたものとする。変換プロキシ10は、URL変換部14及びユーザエージェント情報編集部15により、要求2の宛先であるURLを元のURLに戻し、HTTPヘッダのユーザエージェント値を、機種Aを示すユーザエージェント値に変換する。これにより、要求2は、機種Aから発行された要求に見せ掛けてサイト210へ送られる(要求2’)。サイト210は、この要求2’に応じて、機種A用のコンテンツpage_2.htmlを内容とする応答2’を返送する。
【0045】
図11に示す例では、page_2.htmlには多様性URLへのリンクが含まれていないので、変換プロキシ10において、応答2’に対するリンク展開処理は行われず、上述したように、機種Aに対応する応答であることを示すためのユーザエージェント情報がメタタグにて付加されて、応答2’は検索ロボット310へ送られる。
次に、検索ロボット310は、page_2_for_B.htmlの取得要求(要求3)を発行し、同様の処理を経て、機種Bに対応する応答3’が検索ロボット310に返される。
【0046】
図13は、サイト210から検索ロボット310への応答に対するリンク展開を行う場合の処理及びデータの流れを説明する図である。
図13に示すように、まず、変換プロキシ10の送受信部11がサイト210から送信された応答を受信すると(1)、送受信部11からリンク展開部13へ受信通知が送られ(2)、リンク展開部13が送受信部11から当該応答を取得する(3)。そして、当該応答のボディ部のリンクを検索する(4)。得られたリンクは、例えば図5のメインメモリ103の作業領域に保持される。
リンク展開部13は、当該応答のボディ部に存在するリンクのリンク先のURL(元URL)を引数として多様性URLデータベース12を検索し、当該元URLに対応するユーザエージェントごとの代替URLを取得する(5)。そして、取得した代替URLを含むダミーURLを生成し、メインメモリ103の作業領域に保持されている元URLを取得した代替URLに置き換えるリンク展開処理を行う(6)。このとき、当該応答のボディ部に、ユーザエージェントの種類に個別に対応する応答を返すコンテンツへのリンクが存在しない場合(ユーザエージェントの種類に関わらず画一的な応答を返すコンテンツへのリンクしか存在しない場合)、多様性URLデータベース12には該当するURLが登録されていないため、代替URLは取得されず、リンク展開処理も行われない。
最後にリンク展開部13は、応答のボディ部に記述されているURL(元URL)を、メインメモリ103の作業領域上で置き換えられたダミーURL群に書き換えて(7)、編集済みの応答を送受信部11に返す(8)。そして、この編集済みの応答が送受信部11から検索ロボット310へ送られる。
【0047】
図14は、検索ロボット310からサイト210への要求に対する処理及びデータの流れを説明する図である。
図14に示すように、まず、変換プロキシ10の送受信部11が検索ロボット310から送信された要求を受信すると(1)、送受信部11からURL変換部14へ受信通知が送られ(2)、URL変換部14が送受信部11から当該要求を取得する(3)。そして、当該要求の宛先のURLを引数として多様性URLデータベース12を検索する(4)。この宛先のURLが先のリンク展開処理で生成されたダミーURLであるならば、多様性URLデータベース12に代替URLが登録されているので、これに対応する元URLが返されることとなる。
多様性URLデータベース12から元URLが返されたならば、メインメモリ103の作業領域上で宛先のURLが元URLに変換される(5)。そして、ユーザエージェント情報編集部15へ処理を移行する(6)。
ユーザエージェント情報編集部15は、同じく当該要求の宛先のURLを引数として多様性URLデータベース12を検索する(7)。そして、対応するユーザエージェントのユーザエージェント情報を取得し、メインメモリ103の作業領域上で当該要求のヘッダ情報に含まれるユーザエージェント情報を、取得したユーザエージェント情報に変換する編集処理を行う(8)。
この後、URL変換部14により、メインメモリ103の作業領域上で行われたURLの変換およびユーザエージェント情報の変換を、検索ロボット310から受信した要求のヘッダ部に反映させて(9)、処理済みの要求を送受信部11へ返す(10)。そして、この処理済みの要求が送受信部11からサイト210へ送られる。
【0048】
以上の動作を経て、検索ロボット310は、ユーザエージェントの種類に応じて異なる内容の応答を行うサイト210から対応する各ユーザエージェントの種類に応じた応答を取得することができる。検索ロボット310を備える検索サーバ(検索サイト)300では、このようにして収集されたコンテンツから検索に用いられるインデックス情報を作成し、データベースに登録する。インデックス情報には、コンテンツの位置情報と対応するユーザエージェントの種類を示す情報、コンテンツ内のテキストなどの情報が含まれる。
【0049】
図15は、このような検索サーバ300の構成を概略的に示す図である。
図15に示すように、検索サーバ300は、検索ロボット310と、情報検索のためのインデックス情報を格納するデータベース320と、データベース320を検索するサーチエンジン330とを備える。また特に図示しないが、ネットワークを介して端末装置(ユーザエージェント)からの検索要求を受け付け、サーチエンジン330による検索結果を返すための送受信手段を備えることは言うまでもない。データベース320は、上述したように、検索ロボット310にて収集したコンテンツから作成されたインデックス情報を格納している。本実施の形態では、変換プロキシ10において、サイト210からの応答に対し、メタタグ“<meta>”を用いてユーザエージェント情報を埋め込んでいるので、どのインデックス情報がどのユーザエージェントに対応するものかといった情報をインデックス情報に含めることができる。
【0050】
図16は、所定の端末装置(ユーザエージェント)から検索要求を受け付けた場合のサーチエンジン330の動作を説明するフローチャートである。
まず、所定の端末装置から検索サーバ300へ検索要求が送信される。この検索要求のHTTPヘッダまたは拡張ヘッダには、検索ターム(キーワード)と自装置(ユーザエージェント)の種類を特定するユーザエージェント情報が記録されている。
図16に示すように、端末装置からの検索要求が受信され読み込まれると(ステップ1601)、サーチエンジン330は、入力した検索要求における検索ターム(キーワード)とユーザエージェント情報とを切り出す(ステップ1602)。そして、これらの情報を制約条件として用いてコンテンツを絞り込み、データベース320の検索を行う(ステップ1603)。すなわち、メタタグのkeywords情報に“devinfo=ユーザエージェント情報”または“devinfo=ANY”という文字列が含まれているコンテンツに絞り込んで検索タームによる検索を行う。
【0051】
次に、サーチエンジン330は、所定のフォーマットで検索結果を記述した応答ページを作成し(ステップ1604)、当該応答ページを、検索要求を行った端末装置へ返送する(ステップ1605)。
以上のようにして、端末装置は、自装置に適した検索結果を検索サーバ300から得ることができる。この検索結果は、検索サーバ300で検索可能なコンテンツのうち、当該端末装置に対応したコンテンツを絞り込んで検索した結果であるので、当該機種用に作成されるコンテンツの情報が適切に含まれている。
【0052】
【発明の効果】
以上説明したように、本発明によれば、検索ロボットによる情報収集の際に、端末装置の種類に応じて動的にコンテンツを生成して返すサイトに対して、当該サイトが対応する各機種別のコンテンツに関する情報を取得することが可能となる。
【図面の簡単な説明】
【図1】本発明によるロボット検索の概念を説明する図である。
【図2】本発明による変換プロキシが、検索ロボットと共に検索サーバに設けられる構成を示す図である。
【図3】本発明による変換プロキシが、ネットワーク上の所定のプロキシサーバに設けられる構成を示す図である。
【図4】本発明による変換プロキシが、サイトと共にコンテンツサーバに設けられる構成を示す図である。
【図5】本実施の形態における変換プロキシを設けるサーバを実現するのに好適なコンピュータ装置のハードウェア構成の例を模式的に示した図である。
【図6】本実施の形態による変換プロキシの機能構成を示すブロック図である。
【図7】本実施の形態の多様性URLデータベースに登録される情報の例を示す図である。
【図8】本実施の形態のリンク展開部の動作を説明するフローチャートである。
【図9】図8のダミーリンクへの展開処理の詳細な内容を説明するフローチャートである。
【図10】本実施の形態のURL変換部及びユーザエージェント情報編集部による動作を説明するフローチャートである。
【図11】本実施の形態で収集されるコンテンツの構成例を示す図である。
【図12】図11に示したコンテンツの情報が検索ロボットにて収集される場合の処理及びデータの流れを説明する図である。
【図13】本実施の形態において、サイトから検索ロボットへの応答に対するリンク展開を行う場合の処理及びデータの流れを説明する図である。
【図14】本実施の形態において、検索ロボットからサイトへの要求に対する処理及びデータの流れを説明する図である。
【図15】検索サーバの構成を概略的に示す図である。
【図16】所定の端末装置から検索要求を受け付けた場合のサーチエンジンの動作を説明するフローチャートである。
【図17】ロボット型検索サイトの概略構成を説明する図である。
【符号の説明】
10…変換プロキシ、11…送受信部、12…多様性URLデータベース、13…リンク展開部、14…URL変換部、15…ユーザエージェント情報編集部、210…サイト、300…検索サーバ、310…検索ロボット、320…データベース、330…サーチエンジン

Claims (16)

  1. ネットワーク上のサイトと当該サイトにアクセスして情報を収集する検索ロボットとの間で行われるデータ交換を中継する送受信部と、
    前記検索ロボットから前記サイトへの情報取得要求に対する当該サイトからの応答を前記送受信部が受信し、当該応答に含まれるリンクのリンク先がアクセス元であるユーザエージェントの種類に応じて個別の応答を返すコンテンツである場合に、当該リンクを展開し、当該リンク先のコンテンツが対応しているユーザエージェントの情報を取得するリンク展開部と、
    展開された前記リンクに基づいてなされた前記検索ロボットからの情報取得要求を前記送受信部が受信した場合に、当該情報取得要求に含まれるユーザエージェントの情報を、前記リンク先のコンテンツが対応している前記ユーザエージェントの情報に変換するユーザエージェント情報編集部と
    を備えることを特徴とするサーバ。
  2. アクセス元であるユーザエージェントの種類に応じて個別の応答を返すコンテンツの位置情報と、当該コンテンツが対応している前記ユーザエージェントの情報とを対応付けて登録したデータベースをさらに備え、
    前記リンク展開部は、前記応答に含まれるリンクのリンク先の位置情報を引数として前記データベースを検索して前記ユーザエージェントの情報を取得し、
    前記ユーザエージェント情報編集部は、前記情報取得要求に含まれる前記ユーザエージェントの情報を前記データベースから得られる前記ユーザエージェントの情報に変換することを特徴とする請求項1に記載のサーバ。
  3. 前記検索ロボットを備えるサーバと同一のサーバマシンに構築されたことを特徴とする請求項1に記載のサーバ。
  4. 前記サイトを備えるサーバと同一のサーバマシンに構築されたことを特徴とする請求項1に記載のサーバ。
  5. 前記検索ロボットを備えるサーバ及び前記サイトを備えるサーバとは別個のサーバマシンに構築されたことを特徴とする請求項1に記載のサーバ。
  6. ネットワーク上のサイトにアクセスして情報を収集する検索ロボットとの間でデータ交換を行う第1の送受信手段と、
    前記第1の送受信手段にて受信された前記検索ロボットから前記サイトへの情報取得要求に含まれるユーザエージェント情報を、所定のユーザエージェントから発行された情報取得要求に見せ掛けるための他のユーザエージェント情報に変換する編集手段と、
    前記サイトとの間でデータ交換を行い、前記編集手段にて前記ユーザエージェント情報を変換された前記情報取得要求を宛先である前記サイトへ送信する第2の送受信手段と
    を備えることを特徴とするサーバ。
  7. 前記第2の送受信手段にて受信した前記サイトから前記検索ロボットへの応答を解析する解析手段をさらに備え、
    前記編集手段は、前記解析手段の解析によって得られた情報に基づいて前記所定のユーザエージェントを特定し、前記情報取得要求のユーザエージェント情報を、特定された当該ユーザエージェントの前記ユーザエージェント情報に変換することを特徴とする請求項6に記載のサーバ。
  8. 前記解析手段は、前記応答に含まれるリンクのリンク先がアクセス元であるユーザエージェントの種類に応じて個別の応答を返すコンテンツである場合に、当該リンクのリンク先情報を、リンク先の当該コンテンツが対応しているユーザエージェントを識別するための識別情報を含むダミー情報に置き換えて、前記第1の送受信手段に前記検索ロボットへ送信させ、
    前記編集手段は、前記ダミー情報を宛先として前記検索ロボットから発行された情報取得要求を前記第1の送受信手段が受信した場合に、当該ダミー情報を本来のリンク先情報に戻し、かつ当該情報取得要求に含まれるユーザエージェント情報を当該ダミー情報に含まれる前記識別情報にて特定されるユーザエージェントのユーザエージェント情報に変換することを特徴とする請求項7に記載のサーバ。
  9. ネットワーク上のウェブサイトと当該ウェブサイトにアクセスして情報を収集する検索ロボットとの間で行われるデータ交換を中継する送受信部と、
    前記検索ロボットから前記ウェブサイトへの情報取得要求に対する当該ウェブサイトからの応答を前記送受信部が受信し、当該応答に含まれるリンクのリンク先がアクセス元であるユーザエージェントの種類に応じて個別の応答を返すウェブコンテンツである場合に、当該応答に含まれるリンクのリンク先のURL(Uniform Resource Locators)を、当該ウェブコンテンツが対応している前記ユーザエージェントに個別に対応する代替URLに置き換えるリンク展開部と、
    前記代替URLを宛先として前記検索ロボットから発行された情報取得要求を前記送受信部が受信した場合に、当該代替URLを本来のリンク先のURLに置き換えるURL変換部と、
    前記代替URLを宛先として前記検索ロボットから発行された情報取得要求を前記送受信部が受信した場合に、当該情報取得要求のHTTP(Hypertext Transfer Protocol)ヘッダにおけるユーザエージェントの情報を、当該代替URLに対応する前記ユーザエージェントの情報に変換するユーザエージェント情報編集部と
    を備えることを特徴とするサーバ。
  10. アクセス元であるユーザエージェントの種類に応じて個別の応答を返すウェブコンテンツのURLと、当該ウェブコンテンツが対応している前記ユーザエージェントの情報と、当該ユーザエージェントに個別に対応する代替URLとを対応付けて登録したデータベースをさらに備え、
    前記リンク展開部は、前記検索ロボットから前記ウェブサイトへの情報取得要求に対する当該ウェブサイトからの応答に含まれるリンクのリンク先のURLを引数として前記データベースを検索して前記代替URLを取得し、
    前記URL変換部は、前記代替URLを宛先として前記検索ロボットから発行された情報取得要求における当該代替URLを引数として前記データベースを検索して本来のリンク先のURLを取得し、
    前記ユーザエージェント情報編集部は、前記代替URLを宛先として前記検索ロボットから発行された情報取得要求における当該代替URLを引数として前記データベースを検索して対応する前記ユーザエージェントの情報を取得することを特徴とする請求項9に記載のサーバ。
  11. ネットワークに接続されたコンピュータを用いて、当該ネットワーク上のサイトから情報を収集する情報収集方法であって、
    所定の前記サイトへの情報取得要求に対する当該サイトからの応答を受信し、受信した当該応答に含まれるリンクのリンク先がアクセス元であるユーザエージェントの種類に応じて個別の応答を返すコンテンツである場合に、当該リンクを展開し、当該リンク先のコンテンツが対応しているユーザエージェントの情報を取得する第1のステップと、
    前記ユーザエージェントの情報に基づいて、前記ユーザエージェントから発行された情報取得要求に見せ掛けるための情報が付加された情報取得要求を前記応答に含まれる前記リンクのリンク先へ送信する第2のステップと、
    前記リンク先から前記ユーザエージェントの種類に応じた応答を取得する第3のステップと
    を含むことを特徴とする情報収集方法。
  12. 前記第1のステップでは、所定の記憶装置に格納され、アクセス元であるユーザエージェントの種類に応じて個別の応答を返すコンテンツの位置情報と、当該コンテンツが対応している前記ユーザエージェントの情報とを対応付けて登録したデータベースに対し、前記応答に含まれるリンクのリンク先の位置情報を引数として検索することにより、前記ユーザエージェントの情報を取得することを特徴とする請求項11に記載の情報収集方法。
  13. ネットワークに接続されたコンピュータを用いて、当該ネットワーク上のサイトから情報を収集する情報収集方法であって、
    所定の検索ロボットから所定の前記サイトへの情報取得要求に対する当該サイトからの応答を受信し、受信した当該応答に含まれるリンクのリンク先がアクセス元であるユーザエージェントの種類に応じて個別の応答を返すウェブコンテンツである場合に、当該応答に含まれるリンクのリンク先のURL(Uniform Resource Locators)を、当該ウェブコンテンツが対応している前記ユーザエージェントに個別に対応する代替URLに置き換え、当該応答の送信先である検索ロボットへ送信する第1のステップと、
    前記代替URLを宛先として前記検索ロボットから発行された情報取得要求を受信し、当該代替URLを本来のリンク先のURLに置き換え、当該情報取得要求のHTTP(Hypertext Transfer Protocol)ヘッダにおけるユーザエージェントの情報を、当該代替URLに対応する前記ユーザエージェントの情報に変換し、当該リンク先に送信する第2のステップと、
    前記ユーザエージェントの情報を変換された前記情報取得要求に対する前記リンク先からの応答を受信し、当該応答に当該ユーザエージェントの識別情報を付加して前記検索ロボットに送信する第3のステップと
    を含むことを特徴とする情報収集方法。
  14. ネットワークに接続されたコンピュータを制御して、所定の機能を実現するプログラムであって、
    前記ネットワーク上のサイトと当該サイトにアクセスして情報を収集する検索ロボットとの間で行われるデータ交換を中継する送受信手段と、
    前記検索ロボットから前記サイトへの情報取得要求に対する当該サイトからの応答を前記送受信手段にて受信し、当該応答に含まれるリンクのリンク先がアクセス元であるユーザエージェントの種類に応じて個別の応答を返すコンテンツである場合に、当該リンクを展開し、当該リンク先のコンテンツが対応しているユーザエージェントの情報を取得するリンク展開手段と、
    展開された前記リンクに基づいてなされた前記検索ロボットからの情報取得要求を前記送受信手段にて受信した場合に、当該情報取得要求に含まれるユーザエージェントの情報を、前記リンク先のコンテンツが対応している前記ユーザエージェントの情報に変換するユーザエージェント情報編集手段として、
    前記コンピュータを機能させることを特徴とするプログラム。
  15. ネットワークに接続されたコンピュータを制御して、所定の機能を実現するプログラムであって、
    ネットワーク上のウェブサイトと当該ウェブサイトにアクセスして情報を収集する検索ロボットとの間で行われるデータ交換を中継する送受信手段と、
    前記検索ロボットから前記ウェブサイトへの情報取得要求に対する当該ウェブサイトからの応答を前記送受信手段にて受信し、当該応答に含まれるリンクのリンク先がアクセス元であるユーザエージェントの種類に応じて個別の応答を返すウェブコンテンツである場合に、当該応答に含まれるリンクのリンク先のURL(Uniform Resource Locators)を、当該ウェブコンテンツが対応している前記ユーザエージェントに個別に対応する代替URLに置き換えるリンク展開手段と、
    前記代替URLを宛先として前記検索ロボットから発行された情報取得要求を前記送受信手段にて受信した場合に、当該代替URLを本来のリンク先のURLに置き換えるURL変換手段と、
    前記代替URLを宛先として前記検索ロボットから発行された情報取得要求を前記送受信手段にて受信した場合に、当該情報取得要求のHTTP(Hypertext Transfer Protocol)ヘッダにおけるユーザエージェントの情報を、当該代替URLに対応する前記ユーザエージェントの情報に変換するユーザエージェント情報編集手段として、
    前記コンピュータを機能させることを特徴とするプログラム。
  16. 前記プログラムにて実現される前記リンク展開手段は、所定の記憶装置に格納され、アクセス元であるユーザエージェントの種類に応じて個別の応答を返すウェブコンテンツのURLと、当該ウェブコンテンツが対応している前記ユーザエージェントの情報と、当該ユーザエージェントに個別に対応する代替URLとを対応付けて登録したデータベースに対し、前記検索ロボットから前記ウェブサイトへの情報取得要求に対する当該ウェブサイトからの応答に含まれるリンクのリンク先のURLを引数として検索を行って前記代替URLを取得し、
    前記プログラムにて実現される前記URL変換手段は、前記代替URLを宛先として前記検索ロボットから発行された情報取得要求における当該代替URLを引数として前記データベースを検索して本来のリンク先のURLを取得し、
    前記プログラムにて実現される前記ユーザエージェント情報編集手段は、前記代替URLを宛先として前記検索ロボットから発行された情報取得要求における当該代替URLを引数として前記データベースを検索して対応する前記ユーザエージェントの情報を取得することを特徴とする請求項15に記載のプログラム。
JP2003047983A 2003-02-25 2003-02-25 サーバ及びプログラム Expired - Fee Related JP4007596B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2003047983A JP4007596B2 (ja) 2003-02-25 2003-02-25 サーバ及びプログラム
US10/751,767 US7536445B2 (en) 2003-02-25 2004-01-05 Enabling a web-crawling robot to collect information from web sites that tailor information content to the capabilities of accessing devices

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003047983A JP4007596B2 (ja) 2003-02-25 2003-02-25 サーバ及びプログラム

Publications (2)

Publication Number Publication Date
JP2004258911A true JP2004258911A (ja) 2004-09-16
JP4007596B2 JP4007596B2 (ja) 2007-11-14

Family

ID=33114081

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003047983A Expired - Fee Related JP4007596B2 (ja) 2003-02-25 2003-02-25 サーバ及びプログラム

Country Status (2)

Country Link
US (1) US7536445B2 (ja)
JP (1) JP4007596B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006309322A (ja) * 2005-04-26 2006-11-09 Toshiba Social Automation Systems Co Ltd データ集計方法及びデータ集計システム
JP2012247946A (ja) * 2011-05-26 2012-12-13 Nippon Telegr & Teleph Corp <Ntt> Web情報先読み方法および先読み代理サーバ装置

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7747781B2 (en) * 2001-04-20 2010-06-29 Palmsource Inc. Content access from a communications network using a handheld computer system and method
US9378187B2 (en) 2003-12-11 2016-06-28 International Business Machines Corporation Creating a presentation document
US7890848B2 (en) 2004-01-13 2011-02-15 International Business Machines Corporation Differential dynamic content delivery with alternative content presentation
US7430707B2 (en) 2004-01-13 2008-09-30 International Business Machines Corporation Differential dynamic content delivery with device controlling action
US7571380B2 (en) 2004-01-13 2009-08-04 International Business Machines Corporation Differential dynamic content delivery with a presenter-alterable session copy of a user profile
US8499232B2 (en) 2004-01-13 2013-07-30 International Business Machines Corporation Differential dynamic content delivery with a participant alterable session copy of a user profile
US20050192948A1 (en) * 2004-02-02 2005-09-01 Miller Joshua J. Data harvesting method apparatus and system
US7827239B2 (en) 2004-04-26 2010-11-02 International Business Machines Corporation Dynamic media content for collaborators with client environment information in dynamic client contexts
US7519683B2 (en) 2004-04-26 2009-04-14 International Business Machines Corporation Dynamic media content for collaborators with client locations in dynamic client contexts
US7487208B2 (en) 2004-07-08 2009-02-03 International Business Machines Corporation Differential dynamic content delivery to alternate display device locations
US8185814B2 (en) 2004-07-08 2012-05-22 International Business Machines Corporation Differential dynamic delivery of content according to user expressions of interest
US7921362B2 (en) * 2004-07-08 2011-04-05 International Business Machines Corporation Differential dynamic delivery of presentation previews
US9167087B2 (en) 2004-07-13 2015-10-20 International Business Machines Corporation Dynamic media content for collaborators including disparate location representations
US7426538B2 (en) 2004-07-13 2008-09-16 International Business Machines Corporation Dynamic media content for collaborators with VOIP support for client communications
US8069219B2 (en) * 2005-03-03 2011-11-29 Nokia Corporation Method and apparatus for implementing a mobile web server based system
US20090094137A1 (en) * 2005-12-22 2009-04-09 Toppenberg Larry W Web Page Optimization Systems
US20070168465A1 (en) * 2005-12-22 2007-07-19 Toppenberg Larry W Web Page Optimization Systems
US8041703B2 (en) * 2006-08-03 2011-10-18 Yahoo! Inc. Agent for identifying domains with content arranged for display by a mobile device
US20100250400A1 (en) * 2006-11-10 2010-09-30 Media Patents, S.L. Apparatus and methods for the sale of software products
US20080114695A1 (en) * 2006-11-10 2008-05-15 Semantic Components S.L. Process for implementing a method for the on-line sale of software product use licenses through a data network, and software component which allows carrying out said process
EP2215595B1 (en) * 2007-11-23 2012-02-22 Media Patents S.L. A process for the on-line distribution of audiovisual contents with advertisements, advertisement management system, digital rights management system and audiovisual content player provided with said systems
US20110060688A1 (en) * 2007-11-23 2011-03-10 Media Patents, S.L. Apparatus and methods for the distribution of digital files
ES2326949B1 (es) * 2008-03-18 2010-07-14 Clarity Systems, S.L. Procedimiento utilizado por un servidor de streaming para realizar una transmision de un fichero multimedia en una red de datos.
US7984097B2 (en) 2008-03-18 2011-07-19 Media Patents, S.L. Methods for transmitting multimedia files and advertisements
US9305013B2 (en) * 2008-08-28 2016-04-05 Red Hat, Inc. URI file system
US9154532B2 (en) 2009-04-27 2015-10-06 Zaron Remote Llc Methods and apparatus for transmitting multimedia files in a data network
JP5705114B2 (ja) * 2009-07-28 2015-04-22 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 情報処理装置、情報処理方法、プログラムおよびウェブ・システム
US8407351B2 (en) 2009-11-25 2013-03-26 Nokia Corporation Method and apparatus for ensuring transport of user agent information
US9317613B2 (en) * 2010-04-21 2016-04-19 Yahoo! Inc. Large scale entity-specific resource classification
US8819168B2 (en) * 2010-12-14 2014-08-26 Microsoft Corporation Link expansion service
US20120327931A1 (en) * 2011-06-21 2012-12-27 Alcatel-Lucent Usa Inc. Gateways integrating name-based networks with host-based networks
US8527862B2 (en) * 2011-06-24 2013-09-03 Usablenet Inc. Methods for making ajax web applications bookmarkable and crawlable and devices thereof
US9805018B1 (en) * 2013-03-15 2017-10-31 Steven E. Richfield Natural language processing for analyzing internet content and finding solutions to needs expressed in text
US20140344266A1 (en) * 2013-05-17 2014-11-20 Broadcom Corporation Device information used to tailor search results
IN2013CH06148A (ja) * 2013-12-30 2015-07-03 Samsung Electronics Co Ltd
US10360597B2 (en) * 2014-06-27 2019-07-23 American Express Travel Related Services Company, Inc. System and method for contextual services experience
US10599402B2 (en) * 2017-07-13 2020-03-24 Facebook, Inc. Techniques to configure a web-based application for bot configuration
KR102247067B1 (ko) * 2019-03-28 2021-05-03 네이버클라우드 주식회사 웹사이트에서 수집된 url을 처리하는 방법, 장치 및 컴퓨터 프로그램
US11271933B1 (en) 2020-01-15 2022-03-08 Worldpay Limited Systems and methods for hosted authentication service

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6167441A (en) * 1997-11-21 2000-12-26 International Business Machines Corporation Customization of web pages based on requester type
JP4037999B2 (ja) 2000-05-15 2008-01-23 インターナショナル・ビジネス・マシーンズ・コーポレーション ウェブサイト、ロボット型検索エンジン応答システム、ロボット型検索エンジン登録方法、記憶媒体及びプログラム伝送装置
US20020078014A1 (en) * 2000-05-31 2002-06-20 David Pallmann Network crawling with lateral link handling
JP2002215642A (ja) 2001-01-23 2002-08-02 Ryosuke Okada フィードバック型インターネット検索方法及びその方法を実施するためのシステムとプログラム記録媒体
JP3714879B2 (ja) 2001-02-27 2005-11-09 ヤフー株式会社 Web検索サービスシステムおよび方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006309322A (ja) * 2005-04-26 2006-11-09 Toshiba Social Automation Systems Co Ltd データ集計方法及びデータ集計システム
JP2012247946A (ja) * 2011-05-26 2012-12-13 Nippon Telegr & Teleph Corp <Ntt> Web情報先読み方法および先読み代理サーバ装置

Also Published As

Publication number Publication date
JP4007596B2 (ja) 2007-11-14
US20040205114A1 (en) 2004-10-14
US7536445B2 (en) 2009-05-19

Similar Documents

Publication Publication Date Title
JP4007596B2 (ja) サーバ及びプログラム
US6988100B2 (en) Method and system for extending the performance of a web crawler
JP3719825B2 (ja) 情報処理装置及び情報処理方法
JP3943830B2 (ja) 文書合成方法および文書合成装置
US7370036B2 (en) Facilitating identification of entire web pages when each web page is rendered from multiple portions and interest is expressed based on content of the portions
WO2002010955A2 (en) Computer method and apparatus for determining content owner of a website
NZ566291A (en) Methods and devices for post processing rendered web pages and handling requests of post processed web pages
JP2010500689A (ja) 対話的ウェブアプリケーションのウェブ分析可能化方法
JP2006318373A (ja) タスク選択支援サーバ、及び、タスク選択支援方法
JP2007233856A (ja) 情報処理装置、情報処理システム、および方法、並びにコンピュータ・プログラム
US8090702B2 (en) Analyzing web site traffic
JP2000066656A (ja) 動的文書の特殊文字処理システムおよび特殊文字処理プログラムを記録した記録媒体
JPWO2004021234A1 (ja) ネットワークシステム、プロバイダ、管理サイト、リクエスタ及びプログラム
JP2004178263A (ja) Webサーバ、Javaサーブレットの機能を有するWebサーバ、およびコンピュータプログラム
JPWO2003060764A1 (ja) 情報検索システム
JP2005275488A (ja) 入力支援方法およびプログラム
CN116150513A (zh) 数据处理方法、装置、电子设备及计算机可读存储介质
JP2006236221A (ja) ウエブページ検索のための管理サーバ装置
JP4087754B2 (ja) ウェブリソース再編成によるウェブ利用学習支援方法、ウェブリソース再構成装置、およびプログラム
JP4299934B2 (ja) 電子情報公開証明方法及びシステム、並びに電子情報公開証明プログラムを格納した記憶媒体
JP4259858B2 (ja) Wwwサイト履歴検索装置及び方法並びにプログラム
JP2000222329A (ja) 情報通信システム、情報提供装置、ユーザ属性情報収集方法及び記録媒体
JP2002082936A (ja) コンテンツデータ表示装置とコンテンツデータ表示システム
JP2005071319A (ja) ホームページ用キーワード取得装置
JP2001022788A (ja) 情報検索装置および情報検索プログラムを記録した記録媒体

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061219

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070309

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070501

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070725

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: 20070821

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20070822

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070827

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

Free format text: PAYMENT UNTIL: 20100907

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100907

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110907

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120907

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees