JP6328233B2 - ウェブ・ページのロードを最適化するためのコンピュータ・プログラム製品、システム、および方法 - Google Patents

ウェブ・ページのロードを最適化するためのコンピュータ・プログラム製品、システム、および方法 Download PDF

Info

Publication number
JP6328233B2
JP6328233B2 JP2016517103A JP2016517103A JP6328233B2 JP 6328233 B2 JP6328233 B2 JP 6328233B2 JP 2016517103 A JP2016517103 A JP 2016517103A JP 2016517103 A JP2016517103 A JP 2016517103A JP 6328233 B2 JP6328233 B2 JP 6328233B2
Authority
JP
Japan
Prior art keywords
web page
interest
elements
client device
dom
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016517103A
Other languages
English (en)
Other versions
JP2016526230A (ja
Inventor
アイヴォリー、アンドリュー、ジェイ
カプリンガー、トッド、イー
シューク、アーロン、ケイ
ステッチャー、デイヴィッド、エム
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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
Publication of JP2016526230A publication Critical patent/JP2016526230A/ja
Application granted granted Critical
Publication of JP6328233B2 publication Critical patent/JP6328233B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • 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/903Querying
    • G06F16/9035Filtering based on additional data, e.g. user or group profiles
    • 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/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • 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/957Browsing optimisation, e.g. caching or content distillation
    • 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/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9574Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
    • 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/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/137Hierarchical processing, e.g. outlines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/875Monitoring of systems including the internet

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、一般にウェブ・ページに関し、より詳細には、ウェブ・ページのウェブ・ページ要素に対する集約されたユーザ選好に基づいてウェブ・ページのロードを最適化することに関する。
ウェブ・ページは、ワールド・ワイド・ウェブに適したウェブ文書または他のウェブ・リソースであり、ウェブ・ブラウザを介してアクセスすることができ、ユーザのコンピューティング・デバイス・ディスプレイ上に表示することができる。ウェブ・ページは、「ウェブ・サーバ」と一般に呼ばれるリモート・サーバから、ウェブ・ブラウザによって取り出すことができる。取り出されたウェブ・ページは、ハイパーテキスト・マークアップ言語(HTML)文書の形であることがあり、これは、ブラウザによって読み取られて、「ドキュメント・オブジェクト・モデル」ツリー構造などに解析される。次いでブラウザは、ウェブ・ページの要素(例えば画像)を、これらの要素がHTML文書中で現れる順序などに基づいて、ウェブ・サーバからロードする。結果として、ユーザは、ウェブ・ページ中でユーザの関心のある情報を見ることができるようになる前に、ウェブ・ページ全体がロードされるのを待機しなければならないことがある。例えば、ユーザが地元ニュース・テレビ局のウェブサイトにアクセスするとき、ユーザは、天気および地元ニュースに関する情報を閲覧することにのみ関心がある場合がある。しかし、これらの要素が最後にロードされる場合、ユーザは、天気および地元ニュースに関する情報を閲覧できるようになる前に、ウェブ・ページ全体がロードされるのを待機しなければならないことがある。
このような問題は、モバイル・コンピューティング・デバイスによって悪化する。モバイル・コンピューティング・デバイスは、処理速度がより遅くメモリがより少なく、そのため、ウェブ・ページをウェブ・サーバからダウンロードするのにより長い時間がかかり、ユーザが関心のある情報を閲覧するために待機しなければならないであろう時間の長さが増加する。
結果的に、ウェブ・ページをロードするための現在の手段は、関心のある情報を閲覧する前にウェブ・ページ全体がロードされるのをユーザに待機させる場合があり、これは、接続速度に応じてかなりの時間量である可能性がある。従って本発明が解決しようとする課題はウェブ・ページのウェブ・ページ要素に対する集約されたユーザ選好に基づく、ウェブ・ページのロードの最適化方法を提供することである。
本発明の一実施形態では、ウェブ・ページのロードを最適化する方法は、ウェブ・ページの関心のあるウェブ・ページ要素の指示を複数のクライアント・デバイスから受信することを含む。この方法はさらに、受信された、ウェブ・ページの関心のあるウェブ・ページ要素の指示に基づいて、人気でソートされた、ウェブ・ページのウェブ・ページ要素のリストを更新することを含む。加えて、この方法は、ウェブ・ページを取り出す要求を受信することを含む。さらに、この方法は、ウェブ・ページのウェブ・ページ要素のソート済みリストにアクセスすることを含む。加えて、この方法は、ソート済みリストに基づく順序で、ウェブ・ページのウェブ・ページ要素の内容をポピュレートするためのデータをプロセッサによって送信することを含む。
前述の方法の実施形態の他の形は、システムおよびコンピュータ・プログラム製品にある。
上記では、後続の本発明についての詳細な記述をよりよく理解できるように、本発明の1つまたは複数の実施形態の特徴および技術的利点を、いくぶん一般的に概説した。本発明の特許請求の範囲の主題を形成できる本発明の追加の特徴および利点については、後述する。
後続の詳細な記述が以下の図面と共に考察されたとき、本発明のよりよい理解を得ることができる。
本発明の一実施形態により構成されたネットワーク・システムを示す図である。 本発明の一実施形態による、クライアント・デバイスのハードウェア構成を示す図である。 本発明の一実施形態による、サーバのハードウェア構成を示す図である。 本発明の一実施形態による、ウェブ・ページのロードを最適化する方法のフローチャートである。 本発明の一実施形態による、ユーザがウェブ・ページ上の要素に対する関心を以前に表明した場合に、そのウェブ・ページを取り出す方法のフローチャートである。 本発明の一実施形態による、ウェブ・ページを取り出す要求と共に、関心のある要素を同時にユーザが表明するときに、ウェブ・ページを取り出す方法のフローチャートである。 本発明の一実施形態による、要求されるウェブ・ページについての関心のある要素をユーザが表明しないときに、ウェブ・ページを取り出す方法のフローチャートである。
本発明は、ウェブ・ページのロードを最適化するための方法、システム、およびコンピュータ・プログラム製品を含む。本発明の一実施形態では、サーバが、ウェブ・ページの関心のあるウェブ・ページ要素の指示(例えばドキュメント・オブジェクト・モデル(DOM)要素)を、複数のクライアント・デバイスから受信する。サーバは、受信したこれらの関心のあるウェブ・ページ要素の指示に基づいて、人気でソートされた、要求されたウェブ・ページについてのウェブ・ページ要素のリストを更新する。ウェブ・ページについての最も多く要求されたウェブ・ページ要素を反映するリストを確立すると、サーバは、このようなリストにアクセスして、要求されたウェブ・ページについてのウェブ・ページ要素の内容をポピュレートするためのデータをソート済みリストに基づく順序で要求元クライアント・デバイスのブラウザに送信することによって、ウェブ・ページを取り出す要求に適切に応答することができる。このようにして、サーバは、要求されたウェブ・ページのより関心の低い要素よりも先に、より関心の高い要素の内容をポピュレートするためのデータを、要求元クライアント・デバイスのブラウザに送信でき、それにより、ウェブ・ページのロードを最適化する(すなわち、要求されたウェブ・ページ中の関心のある要素をユーザが閲覧するための待機時間をおそらく短縮する)ことができる。
後続の記述では、本発明の完全な理解を提供するために、多くの具体的詳細を示す。しかし、そのような具体的詳細がなくても本発明を実践できることは、当業者には明らかであろう。他の場合では、本発明を不必要に詳細に示して曖昧にしないために、周知の回路はブロック図の形で示してある。大部分では、タイミング考慮事項などを考察した詳細は省略してある。というのは、そのような詳細は、本発明の完全な理解を得るのに必要ではなく、当業者のスキル内にあるからである。
次に図を詳細に参照するが、図1に、本発明の一実施形態による、本発明の原理を実践するためのネットワーク・システム100を示す。ネットワーク・システム100は、ネットワーク103を介してサーバ102に接続されるクライアント・デバイス101A〜101C(図1では「クライアント・デバイスA」、「クライアント・デバイスB」、および「クライアント・デバイスC」としてそれぞれ識別される)を含む。クライアント・デバイス101A〜101Cは、集合的にまたは個別に、クライアント・デバイス(複数)101またはクライアント・デバイス(単数)101とそれぞれ呼ばれる場合がある。クライアント・デバイス101は、ネットワーク103に接続できる能力、したがって他のクライアント・デバイス101およびサーバ102と通信できる能力を備えて構成された、任意のタイプのコンピューティング・デバイス(例えば、ポータブル・コンピューティング・ユニット、パーソナル・ディジタル・アシスタント(PDA)、スマートフォン、ラップトップ・コンピュータ、モバイル・フォン、ナビゲーション・デバイス、ゲーム・コンソール、デスクトップ・コンピュータ・システム、ワークステーション、インターネット・アプライアンスなど)であってよい。クライアント・デバイス101のハードウェア構成についての説明は、以下で図2に関して提供する。
一実施形態では、サーバ102は、ウェブサイトをホストするように構成されたウェブ・サーバであってよい。一実施形態では、サーバ102は、本明細書でさらに論じるように、ウェブ・ページの要素の内容をポピュレートするためのデータを、ウェブ・ページの要素の相対的な優先順位に基づく特定の順序で、クライアント・デバイス101のブラウザに送信するように構成される。サーバ102のハードウェア構成についての説明は、以下で図3に関して提供する。
ネットワーク103は、例えば、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、ワイヤレス・ワイド・エリア・ネットワーク、回路交換電話網、グローバル・システム・フォー・モバイル・コミュニケーション(GMS)ネットワーク、ワイヤレス・アプリケーション・プロトコル(WAP)ネットワーク、WiFiネットワーク、IEEE802.11標準ネットワーク、これらの様々な組合せなどであってよい。話を簡単にするために他のネットワークについての説明はここでは省略するが、本発明の範囲を逸脱することなく、他のネットワークが図1のシステム100と共に使用されてもよい。
図1には3つのクライアント101A〜101Cおよび単一のサーバ102を示すが、ネットワーク・システム100は、任意の数のクライアント101およびサーバ102を含んでよい。ネットワーク・システム100の実施形態の範囲は、図1の記述に限定されるべきではない。
次に図2を参照するが、図2には、本発明を実践するためのハードウェア環境を表すクライアント101(図1)のハードウェア構成を示す。図2を参照すると、クライアント101は、システム・バス202によって様々な他のコンポーネントに結合されたプロセッサ201を有する。オペレーティング・システム203が、プロセッサ201上で稼働し、図2の様々なコンポーネントの制御を提供するとともにこれらのコンポーネントの機能を協調させる。本発明の原理によるアプリケーション204が、オペレーティング・システム203と共に稼働し、オペレーティング・システム203に呼出しを提供するが、これらの呼出しは、アプリケーション204によって実施される様々な機能またはサービスを実現する。アプリケーション204は、例えばウェブ・ブラウザを含み得る。
再び図2を参照すると、読取専用メモリ(「ROM」)205がシステム・バス202に結合され、このROM205は、クライアント101のいくつかの基本的な機能を制御する基本入出力システム(「BIOS」)を含む。ランダム・アクセス・メモリ(RAM)206およびディスク・アダプタ207もまた、システム・バス202に結合される。オペレーティング・システム203およびアプリケーション204を含むソフトウェア・コンポーネントは、クライアント101の実行用メイン・メモリとすることのできるRAM206にロードされ得ることに留意されたい。ディスク・アダプタ207は、ディスク・ユニット208(例えばディスク・ドライブ)と通信するインテグレーテッド・ドライブ・エレクトロニクス(「IDE」)アダプタであってよい。
クライアント101はさらに、バス202に結合された通信アダプタ209を備えてよい。通信アダプタ209は、バス202を外部ネットワーク(例えば、図1のネットワーク103)と相互接続し、それによりクライアント101が他のクライアント101およびサーバ102と通信できるようにする。
I/Oデバイスもまた、ユーザ・インタフェース・アダプタ210およびディスプレイ・アダプタ211を介してクライアント101に接続され得る。キーボード212、マウス213、およびスピーカ214は全て、ユーザ・インタフェース・アダプタ210を介してバス202に相互接続され得る。ディスプレイ・モニタ215が、ディスプレイ・アダプタ211によってシステム・バス202に接続され得る。このようにして、ユーザは、キーボード212またはマウス213を介してクライアント101に入力することができ、ディスプレイ215またはスピーカ214を介してクライアント101からの出力を受信することができる。
次に図3を参照するが、図3には、本発明を実践するためのハードウェア環境を表すサーバ102(図1)のハードウェア構成を示す。サーバ102は、システム・バス302によって様々な他のコンポーネントに結合されたプロセッサ301を有する。オペレーティング・システム303が、プロセッサ301上で稼働し、図3の様々なコンポーネントの制御を提供するとともにこれらのコンポーネントの機能を協調させる。本発明の原理によるアプリケーション304が、オペレーティング・システム303と共に稼働し、オペレーティング・システム303に呼出しを提供するが、これらの呼出しは、アプリケーション304によって実施される様々な機能またはサービスを実現する。アプリケーション304は、例えば、以下で図4〜7に関連してさらに論じられるようにウェブ・ページのロードを最適化するためのプログラムを含み得る。
再び図3を参照すると、読取専用メモリ(「ROM」)305がシステム・バス302に結合され、このROM305は、サーバ102のいくつかの基本的な機能を制御する基本入出力システム(「BIOS」)を含む。ランダム・アクセス・メモリ(「RAM」)306およびディスク・アダプタ307もまた、システム・バス302に結合される。オペレーティング・システム303およびアプリケーション304を含むソフトウェア・コンポーネントは、サーバ102の実行用メイン・メモリとすることのできるRAM306にロードされ得ることに留意されたい。ディスク・アダプタ307は、ディスク・ユニット308(例えばディスク・ドライブ)と通信するインテグレーテッド・ドライブ・エレクトロニクス(「IDE」)アダプタであってよい。以下で図4〜7に関連してさらに論じるようにウェブ・ページのロードを最適化するためのプログラムは、ディスク・ユニット308中またはアプリケーション304中にある場合があることに留意されたい。
サーバ102はさらに、バス302に結合された通信アダプタ309を備えてよい。通信アダプタ309は、バス302を外部ネットワーク(例えば、図1のネットワーク103)と相互接続し、それによりサーバ102がクライアント101(図1)と通信できるようにする。
当業者には理解されるであろうが、本発明の態様は、システム、方法、またはコンピュータ・プログラム製品として具体化することができる。したがって、本発明の態様は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)、または、ソフトウェアとハードウェアの態様を組み合わせた実施形態の形をとることができ、本明細書ではこれらは全て「回路」、「モジュール」、または「システム」と一般に呼ばれる場合がある。さらに、本発明の態様は、コンピュータ可読プログラム・コードが組み入れられた1つまたは複数のコンピュータ可読媒体において具体化されるコンピュータ・プログラム製品の形をとることもできる。
1つまたは複数のコンピュータ可読媒体の任意の組合せを利用することができる。コンピュータ可読媒体は、コンピュータ可読信号媒体またはコンピュータ可読記憶媒体であってよい。コンピュータ可読記憶媒体は、例えば、以下のものに限定されないが、電子、磁気、光学、電磁、赤外線、もしくは半導体の、システム、装置、もしくはデバイス、またはこれらの任意の適切な組合せであってよい。コンピュータ可読記憶媒体のより具体的な例(非網羅的なリスト)は、1つまたは複数のワイヤを有する電気接続、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ(RAM)、読取専用メモリ(ROM)、消去可能プログラム可能な読取専用メモリ(EPROMもしくはフラッシュ・メモリ)、ポータブル・コンパクト・ディスク読取専用メモリ(CD−ROM)、光学記憶デバイス、磁気記憶デバイス、またはこれらの任意の適切な組合せを含むことになる。この文書のコンテキストでは、コンピュータ可読記憶媒体は、命令実行システム、装置、またはデバイスによって使用されるプログラムまたはそれらに関連して使用されるプログラムを格納または記憶できる、任意の有形媒体とすることができる。
コンピュータ可読信号媒体は、例えばベースバンド中でまたは搬送波の一部として、コンピュータ可読プログラム・コードが組み入れられた、伝搬データ信号を含み得る。このような伝搬信号は、以下のものに限定されないが電磁、光学、またはこれらの任意の適切な組合せを含めた、多様な形のうちのいずれかをとることができる。コンピュータ可読信号媒体は、コンピュータ可読記憶媒体ではない任意のコンピュータ可読媒体であって、命令実行システム、装置、またはデバイスによって使用されるプログラムまたはそれらに関連して使用されるプログラムを通信、伝搬、または搬送できる任意のコンピュータ可読媒体であってよい。
コンピュータ可読媒体上に組み入れられたプログラム・コードは、以下のものに限定されないがワイヤレス、ワイヤ線、光ファイバ・ケーブル、RFなど、またはこれらの任意の適切な組合せを含めた、任意の適切な媒体を使用して送信され得る。
本発明の態様に関する動作を実施するためのコンピュータ・プログラム・コードは、Java、Smalltal(R)k、C++などのオブジェクト指向プログラミング言語、および、Cプログラミング言語または類似のプログラミング言語などの従来の手続き型プログラミング言語を含めた、1つまたは複数のプログラミング言語の任意の組合せで書かれてよい。プログラム・コードは、完全にユーザのコンピュータ上で実行されるか、スタンドアロン・ソフトウェア・パッケージとして部分的にユーザのコンピュータ上で実行されるか、部分的にユーザのコンピュータ上で実行され部分的にリモート・コンピュータ上で実行されるか、または完全にリモート・コンピュータもしくはサーバ上で実行される場合がある。後者のシナリオでは、リモート・コンピュータは、ローカル・エリア・ネットワーク(LAN)もしくはワイド・エリア・ネットワーク(WAN)を含めた任意のタイプのネットワークを介してユーザのコンピュータに接続されてもよく、または、接続は、外部コンピュータに対して(例えば、インターネット・サービス・プロバイダを使用してインターネットを介して)行われてもよい。
本発明の態様を、本発明の実施形態による方法、装置(システム)、およびコンピュータ・プログラム製品のフローチャート説明またはブロック図あるいはその両方に関して以下に述べる。フローチャート説明またはブロック図あるいはその両方の各ブロック、および、フローチャート説明またはブロック図あるいはその両方の中のブロックの組合せを、コンピュータ・プログラム命令によって実現できることは理解されるであろう。コンピュータまたは他のプログラム可能データ処理装置のプロセッサを介して実行される命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロック中で指定される機能/行為を実現する手段をもたらすように、これらのコンピュータ・プログラム命令を、汎用コンピュータ、専用コンピュータ、または他のプログラム可能データ処理装置のプロセッサに提供して、マシンを生み出すことができる。
また、コンピュータ可読媒体に記憶された命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロック中で指定される機能/行為を実現する命令を含む製造品を生み出すように、これらのコンピュータ・プログラム命令は、コンピュータ可読媒体に記憶され、コンピュータ、他のプログラム可能データ処理装置、または他のデバイスに、特定の方式で機能するよう指示することができる。
また、コンピュータまたは他のプログラム可能装置上で実行される命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロック中で指定される機能/行為を実現するためのプロセスを提供するように、コンピュータ実装プロセスを生み出すべく、コンピュータ・プログラム命令は、コンピュータ、他のプログラム可能データ処理装置、または他のデバイスにロードされ、コンピュータ、他のプログラム可能装置、または他のデバイス上で一連の動作ステップを実施させることができる。
背景技術のセクションで述べたように、ウェブ・ページは、ワールド・ワイド・ウェブに適したウェブ文書または他のウェブ・リソースであり、ウェブ・ブラウザを介してアクセスすることができ、ユーザのコンピューティング・デバイス・ディスプレイ上に表示することができる。ウェブ・ページは、「ウェブ・サーバ」と一般に呼ばれるリモート・サーバから、ウェブ・ブラウザによって取り出すことができる。取り出されたウェブ・ページは、ハイパーテキスト・マークアップ言語(HTML)文書の形であることがあり、これは、ブラウザによって読み取られて、「ドキュメント・オブジェクト・モデル」ツリー構造などに解析される。次いでブラウザは、ウェブ・ページの要素(例えば画像)を、これらの要素がHTML文書中で現れる順序などに基づいて、ウェブ・サーバからロードする。結果として、ユーザは、ウェブ・ページ中でユーザの関心のある情報を見ることができるようになる前に、ウェブ・ページ全体がロードされるのを待機しなければならないことがある。例えば、ユーザが地元ニュース・テレビ局のウェブサイトにアクセスするとき、ユーザは、天気および地元ニュースに関する情報を閲覧することにのみ関心がある場合がある。しかし、これらの要素が最後にロードされる場合、ユーザは、天気および地元ニュースに関する情報を閲覧できるようになる前に、ウェブ・ページ全体がロードされるのを待機しなければならないことがある。このような問題は、モバイル・コンピューティング・デバイスによって悪化する。モバイル・コンピューティング・デバイスは、処理速度がより遅くメモリがより少なく、そのため、ウェブ・ページをウェブ・サーバからダウンロードするのにより長い時間がかかり、ユーザが関心のある情報を閲覧するために待機しなければならないであろう時間の長さが増加する。結果的に、ウェブ・ページをロードするための現在の手段は、関心のある情報を閲覧する前にウェブ・ページ全体がロードされるのをユーザに待機させる場合があり、これは、接続速度に応じてかなりの時間量である可能性がある。
本発明の原理は、図4〜7に関して以下でさらに論じるように、ウェブ・ページの要素の相対的な優先順位に基づいてウェブ・ページの要素をロードして、それにより、関心のある要素を関心のない要素よりも先にロードする手段を提供する。図4は、ウェブ・ページのロードを最適化する方法のフローチャートである。図5は、ユーザがウェブ・ページ上の要素に対する関心を以前に表明した場合に、そのウェブ・ページを取り出す方法のフローチャートである。図6は、ウェブ・ページを取り出す要求と共に、関心のある要素を同時にユーザが表明するときに、ウェブ・ページを取り出す方法のフローチャートである。図7は、要求されるウェブ・ページについての関心のある要素をユーザが表明しないときに、ウェブ・ページを取り出す方法のフローチャートである。
前述のように、図4は、本発明の一実施形態による、ウェブ・ページのロードを最適化する方法400のフローチャートである。
図1〜3と共に図4を参照すると、ステップ401で、サーバ102が、ウェブ・ページを取り出す要求をクライアント・デバイス101から受信する。例えば、クライアント・デバイス101は最初に、ウェブ・ページをサーバ102から取り出す要求を、クライアント・デバイス101のユーザから受信することができる。例えば、ユーザは、サーバ102から取り出されるべきウェブ・ページに対応するユニフォーム・リソース識別子(URL)を、ブラウザ中でタイプ入力することができる。次いでクライアント・デバイス101は、要求されたウェブ・ページを取り出すためにこの要求をサーバ102に送ることができる。
ステップ402で、サーバ102は、要求されたウェブ・ページの要素の内容をポピュレートするためのデータを、要求元クライアント・デバイス101に非同期で送信し始める。次いで、クライアント・デバイス101のブラウザは、これらの要素がサーバ102から受信されるのに伴って、これらの要素をディスプレイ215上に表示し始める。
ステップ403で、クライアント・デバイス101のブラウザは、ディスプレイ215上に表示された要求されたウェブ・ページ上の特定の要素に対する関心についてのフィードバックを、クライアント101のユーザから受信する。例えば、ユーザは、ウェブ・ページ上のエリアを選択することによって、要求したウェブ・ページ中の関心のある要素を示すことができる。例えば、ユーザは、ウェブ・ページ上の関心のある要素の周りに輪郭を引くことができる。
ステップ404で、クライアント・デバイス101のブラウザは、要求されたウェブ・ページのDOMツリー構造の、ウェブ・ページ上のユーザの関心のある要素に対応するドキュメント・オブジェクト・モデル(DOM)要素を識別する。すなわち、ブラウザは、ステップ403でユーザによって表明されたウェブ・ページ上の関心のある要素に対応するDOM要素を識別する。
ステップ405で、クライアント・デバイス101のブラウザは、以下で図5に関してさらに論じるように、後で取り出すためにDOM要素を記憶する(例えば、メモリ206中のキャッシュなど、ローカル・キャッシュにDOM要素をキャッシュする)。
ステップ406で、クライアント・デバイス101のブラウザは、ウェブ・ページ上のユーザの関心のある要素に対応する指示(例えばDOM要素)を、サーバ102に送信する。一実施形態では、クライアント・デバイス101は、以下で論じるように非同期でロードされ得る関心のあるウェブ・ページ要素およびそれらの子を定義するために、非同期モジュール定義(AMD、Asynchronous Module Definition)アプリケーション・プログラミング・インタフェース(API)を利用してサーバ102と通信する。
ステップ407で、サーバ102は、ウェブ・ページ上のユーザの関心のある要素に対応する指示(例えばDOM要素)を受信する。
ステップ408で、サーバ102は、クライアント・デバイス101に、受信したDOM要素の内容をポピュレートするためのデータ(例えば、YouTube(R)ビデオなどの動的データ)を送信し、また、受信したDOM要素の子の内容をポピュレートするためのデータも送信する。
ステップ409で、サーバ102は、ウェブ・ページの残りの要素の内容をポピュレートするためのデータを、要求元クライアント・デバイス101に非同期で送信する。すなわち、サーバ102は、要求されたウェブ・ページについて、DOMツリー構造の残りのDOM要素(およびそれらの子)の内容をポピュレートするためのデータを、要求元クライアント・デバイス101に非同期で送信する。
ステップ410で、サーバ102は、このユーザからの、受信した関心のあるウェブ・ページ要素の指示(例えばDOM要素)(ステップ407で受信した指示)、ならびに、以下でさらに論じるように他のユーザから受信した指示に基づいて、人気でソートされた、要求されたウェブ・ページについてのウェブ・ページ要素のリストを更新する。すなわち、サーバ102は、ウェブ・ページ上の要素ごとの受信したいくつかのDOM要素(ウェブ・ページ上のユーザの関心のある要素に対応する)に基づいてソートされた、要求されたウェブ・ページについてのウェブ・ページ要素のリストを更新する。一実施形態では、このようなリストは、データ記憶ユニット(例えば、メモリ306、ディスク・ユニット308)に記憶される。このようにして、サーバ102は、このウェブ・ページについての最も多く要求されたウェブ・ページ要素の記録を維持する。このような記録は、以下でステップ411に関して論じるように、他のユーザからの応答に基づいて動的に更新することができる。この結果、サーバ102は、以下で図7に関してさらに論じるように、ウェブ・ページの要素の相対的な優先順位に基づいて、要求されたウェブ・ページの要素の内容をポピュレートするためのデータをクライアント・デバイス101のブラウザに送信できることになる。
上記のプロセス(ステップ401〜410)は、サーバ102がウェブ・ページ上の関心のある要素に関する追加のフィードバックを他のユーザから得るために、繰り返すことができる。ウェブ・ページ上の関心のある要素に関する追加のフィードバックを他のユーザから得ることによって、サーバ102は、マップの形とすることのできるリストを作り出せることになり、このリストは、ウェブ・ページ上の様々な要素に対するユーザの表明された関心に基づいて、ウェブ・ページ中の関心のある要素をソートまたは識別する。このようにして、サーバ102は、ブラウザによってロードされる要求されたウェブ・ページのより関心の低い要素よりも先に、より関心の高い要素の内容をポピュレートするためのデータを、クライアント・デバイス101のブラウザに送信できることになり、それにより、ウェブ・ページのロードを最適化する(すなわち、要求されたウェブ・ページ中の関心のある要素をユーザが閲覧するための待機時間をおそらく短縮する)ことができることになる。
ステップ411を参照すると、ウェブ・ページを求める要求がそれ以上あるかどうかがサーバ102によって判定される。ウェブ・ページを求める別の要求がある場合は、サーバ102は、ステップ401で、ウェブ・ページを取り出す要求をクライアント・デバイス101から受信する。
しかし、ウェブ・ページを求める要求をサーバ102が受信しない場合は、サーバ102は、ステップ411で、ウェブ・ページを求める追加の要求があるかどうか監視し続ける。
いくつかの実装形態では、方法400は、他のステップまたは追加のステップあるいはその両方を含むことがあるが、話を明確にするためにそれらのステップは描かれていない。さらに、いくつかの実装形態では、方法400は、提示される順序とは異なる順序で実行されることもあり、図4の考察で提示される順序は例示的なものである。加えて、いくつかの実装形態では、方法400中のいくつかのステップは、実質的に同時方式で実行されることもあり、または省略されることもある。
上で論じたように、方法400に関して、クライアント・デバイス101のブラウザは、ウェブ・ページ上のユーザの関心のある要素に対応するDOMツリー構造のDOM要素を識別するのに応答して、後で取り出すためにDOM要素を記憶することができる(例えば、メモリ206中のキャッシュなど、ローカル・キャッシュにDOM要素をキャッシュする)。図5に関して以下で論じるように、将来のブラウジングの過程で、ユーザは、ユーザがすでにウェブ・ページ上の要素に対する関心を表明したウェブ・ページと同じウェブ・ページに戻ることがあり得る。
図5は、本発明の一実施形態による、ユーザがウェブ・ページ上の要素に対する関心を以前に表明した場合に、そのウェブ・ページを取り出す方法500のフローチャートである。
図1〜3と共に図5を参照すると、ステップ501で、クライアント・デバイス101のブラウザが、以前にユーザが選好を表明したウェブ・ページを取り出す要求を受信する。すなわち、クライアント・デバイス101のブラウザは、ユーザがウェブ・ページ上の要素に対する関心を以前に表明した場合に、そのウェブ・ページを取り出す要求を受信する。
ステップ502で、クライアント・デバイス101のブラウザは、ユーザが以前に関心を表明したウェブ・ページ中の要素に対応する記憶済みDOM要素を取り出す。上で論じたように、クライアント・デバイス101のブラウザは、方法400(図4)のステップ405で、ウェブ・ページ上のユーザの関心のある要素に対応するDOMツリー構造のDOM要素を識別するのに応答して、後で取り出すためにDOM要素を記憶する(例えば、メモリ206中のキャッシュなど、ローカル・キャッシュ中にDOM要素をキャッシュする)。
ステップ503で、クライアント・デバイス101のブラウザは、ユーザが以前に関心を表明したウェブ・ページ中の要素に対応する記憶済みDOM要素と共に、ウェブ・ページを取り出す要求をサーバ102に送信する。
ステップ504で、サーバ102は、クライアント・デバイス101に、受信したDOM要素の内容をポピュレートするためのデータ(例えば、YouTube(R)ビデオなどの動的データ)を送信し、また、受信したDOM要素の子の内容をポピュレートするためのデータも送信する。
ステップ505で、サーバ102は、要求されたウェブ・ページの残りの要素の内容をポピュレートするためのデータを、要求元クライアント・デバイス101に非同期で送信する。すなわち、サーバ102は、要求されたウェブ・ページについて、DOMツリー構造の残りのDOM要素(およびそれらの子)の内容をポピュレートするためのデータを、要求元クライアント・デバイス101に非同期で送信する。
いくつかの実装形態では、方法500は、他のステップまたは追加のステップあるいはその両方を含むことがあるが、話を明確にするためにそれらのステップは描かれていない。さらに、いくつかの実装形態では、方法500は、提示される順序とは異なる順序で実行されることもあり、図5の考察で提示される順序は例示的なものである。加えて、いくつかの実装形態では、方法500中のいくつかのステップは、実質的に同時方式で実行されることもあり、または省略されることもある。
図4に関して前に論じたように、ユーザは、要求したウェブ・ページ中の関心のある要素がクライアント・デバイス101のディスプレイ215上に表示された後で、関心のある要素に関するフィードバックを提供することができる。しかし、図6に関して以下で論じるように、ユーザはまた、ウェブ・ページを取り出す要求と共に、関心のある要素を同時に表明することもできる。
図6は、本発明の一実施形態による、ウェブ・ページを取り出す要求と共に、関心のある要素を同時にユーザが表明するときに、ウェブ・ページを取り出す方法600のフローチャートである。
図1〜3と共に図6を参照すると、ステップ601で、クライアント・デバイス101のブラウザが、DOM要素に対する関心を示すユーザからの指示と共に、ウェブ・ページを取り出す要求を受信する。
ステップ602で、クライアント・デバイス101のブラウザは、ユーザによって指定された関心のあるDOM要素と共に、ウェブ・ページを取り出す要求をサーバ102に送信する。
ステップ603で、サーバ102は、クライアント・デバイス101に、関心のあるDOM要素の内容をポピュレートするためのデータを送信し、また、関心のあるDOM要素の子の内容をポピュレートするためのデータも送信する。
ステップ604で、サーバ102は、要求されたウェブ・ページの残りの要素の内容をポピュレートするためのデータを、要求元クライアント・デバイス101に非同期で送信する。すなわち、サーバ102は、要求されたウェブ・ページについて、DOMツリー構造の残りのDOM要素(およびそれらの子)の内容をポピュレートするためのデータを、要求元クライアント・デバイス101に非同期で送信する。
ステップ605で、サーバ102は、ウェブ・ページ上のユーザの関心のある要素に対応する受信したDOM要素に基づいて、人気でソートされた、要求されたウェブ・ページについての要素のリストを更新する。すなわち、サーバ102は、このウェブ・ページについての最も多く要求されたウェブ・ページ要素を反映するリストを更新する。
いくつかの実装形態では、方法600は、他のステップまたは追加のステップあるいはその両方を含むことがあるが、話を明確にするためにそれらのステップは描かれていない。さらに、いくつかの実装形態では、方法600は、提示される順序とは異なる順序で実行されることもあり、図6の考察で提示される順序は例示的なものである。加えて、いくつかの実装形態では、方法600中のいくつかのステップは、実質的に同時方式で実行されることもあり、または省略されることもある。
このウェブ・ページについての最も多く要求されたウェブ・ページ要素を反映するリストを確立すると、サーバ102は、図7に関して以下で論じるように、ブラウザによってロードされる要求されたウェブ・ページ中のより関心の低い要素よりも先に、より関心の高い要素の内容をポピュレートするためのデータを、クライアント・デバイス101のブラウザに送信することで、適切に応答することができ、それにより、ウェブ・ページのロードを最適化する(すなわち、要求されたウェブ・ページ中の関心のある要素をユーザが閲覧するための待機時間をおそらく短縮する)ことができる。
図7は、本発明の一実施形態による、要求されるウェブ・ページについての関心のある要素をユーザが表明しないときに、ウェブ・ページを取り出す方法700のフローチャートである。
図1〜3と共に図7を参照すると、ステップ701で、サーバ102は、ウェブ・ページのどの要素も重要として指定されない状態で、ウェブ・ページを取り出す要求をクライアント・デバイス101から受信する。
ステップ702で、サーバ102は、要求されたウェブ・ページについてのウェブ・ページ要素の人気でソートされた、要求されたウェブ・ページについてのウェブ・ページ要素のリストにアクセスする。
ステップ703で、サーバ102は、ソートされたリストに基づく順序で、要求されたウェブ・ページの要素の内容をポピュレートするためのデータをクライアント・デバイス101に送信する。このようにして、サーバ102は、要求されたウェブ・ページ中のより関心の低い要素よりも先に、より関心の高い要素の内容をポピュレートするためのデータを、クライアント・デバイス101に送信し、それにより、ウェブ・ページのロードを最適化する(すなわち、要求されたウェブ・ページ中の関心のある要素をユーザが閲覧するための待機時間をおそらく短縮する)。
いくつかの実装形態では、方法700は、他のステップまたは追加のステップあるいはその両方を含むことがあるが、話を明確にするためにそれらのステップは描かれていない。さらに、いくつかの実装形態では、方法700は、提示される順序とは異なる順序で実行されることもあり、図7の考察で提示される順序は例示的なものである。加えて、いくつかの実装形態では、方法700中のいくつかのステップは、実質的に同時方式で実行されることもあり、または省略されることもある。
本発明の様々な実施形態についての記述を例示のために提示したが、これらの記述は、網羅的なものとはせず、また、開示される実施形態に限定されるものともしない。述べた実施形態の範囲および主旨を逸脱することなく、多くの変更および変形が当業者には明らかとなるであろう。本明細書で使用される用語は、実施形態の原理、実際の応用、もしくは市場で見られる技術に勝る技術的改善を最もよく説明するために、または、本明細書に開示される実施形態を他の当業者が理解できるようにするために、選ばれたものである。

Claims (16)

  1. システムであって、
    ウェブ・ページのロードを最適化するためのコンピュータ・プログラムを記憶するためのメモリ・ユニットと、
    前記メモリ・ユニットに結合されたプロセッサを備え、前記プロセッサが、前記コンピュータ・プログラムに応答して、
    ウェブ・ページの関心のあるウェブ・ページ要素の指示を複数のクライアント・デバイスから受信するための回路と、
    前記受信された、前記ウェブ・ページの関心のあるウェブ・ページ要素の指示に基づいて、人気でソートされた前記ウェブ・ページのウェブ・ページ要素のリストを更新するための回路と、
    前記ウェブ・ページを取り出す要求を受信するための回路と、
    前記ウェブ・ページのウェブ・ページ要素の前記ソート済みリストにアクセスするための回路と、
    前記ソート済みリストに基づく順序で、前記ウェブ・ページのウェブ・ページ要素の内容をポピュレートするためのデータを送信するための回路を備える、システム。
  2. 前記ウェブ・ページの関心のあるウェブ・ページ要素の前記指示が、ドキュメント・オブジェクト・モデル(DOM)要素として表明される、請求項1に記載のシステム。
  3. 前記プロセッサがさらに、
    前記ウェブ・ページの関心のある要素に対応するDOM要素を受信するのに応答して、前記ウェブ・ページの前記DOM要素の内容をポピュレートするためのデータをクライアント・デバイスに送信し、前記ウェブ・ページの前記DOM要素の子の内容をポピュレートするためのデータを前記クライアント・デバイスに送信するための回路を備える、請求項2に記載のシステム。
  4. 前記プロセッサがさらに、
    前記ウェブ・ページの残りの要素の内容をポピュレートするためのデータを前記クライアント・デバイスに非同期で送信するための回路を備える、請求項3に記載のシステム。
  5. 前記ウェブ・ページの関心のあるウェブ・ページ要素の指示が、前記ウェブ・ページ上のエリアのユーザ選択に応答して識別される、請求項1に記載のシステム。
  6. 前記ユーザ選択が、前記ウェブ・ページ上の前記関心のある要素の周りに輪郭を引くことを含む、請求項5に記載のシステム。
  7. 前記複数のクライアント・デバイスのうちのクライアント・デバイスが、非同期でロードされ得る関心のあるウェブ・ページ要素およびそれらの子を定義するために、非同期モジュール定義(AMD)アプリケーション・プログラミング・インタフェース(API)を利用する、請求項1に記載のシステム。
  8. コンピュータの情報処理により、ウェブ・ページのロードを最適化する方法であって、
    ウェブ・ページの関心のあるウェブ・ページ要素の指示を複数のクライアント・デバイスから受信するステップ、
    前記受信された、前記ウェブ・ページの関心のあるウェブ・ページ要素の指示に基づいて、人気でソートされた前記ウェブ・ページのウェブ・ページ要素のリストを更新するステップ、
    前記ウェブ・ページを取り出す要求を受信するステップ、
    前記ウェブ・ページのウェブ・ページ要素の前記ソート済みリストにアクセスするステップ、および、
    前記ソート済みリストに基づく順序で、前記ウェブ・ページのウェブ・ページ要素の内容をポピュレートするためのデータをプロセッサによって送信するステップを含む方法。
  9. 前記ウェブ・ページの関心のあるウェブ・ページ要素の前記指示が、ドキュメント・オブジェクト・モデル(DOM)要素として表明される、請求項8に記載の方法。
  10. 前記ウェブ・ページの関心のある要素に対応するDOM要素を受信するのに応答して、前記ウェブ・ページの前記DOM要素の内容をポピュレートするためのデータをクライアント・デバイスに送信し、前記ウェブ・ページの前記DOM要素の子の内容をポピュレートするためのデータを前記クライアント・デバイスに送信するステップをさらに含む、請求項9に記載の方法。
  11. 前記ウェブ・ページの残りの要素の内容をポピュレートするためのデータを前記クライアント・デバイスに非同期で送信するステップをさらに含む、請求項10に記載の方法。
  12. 前記ウェブ・ページの関心のあるウェブ・ページ要素の指示が、前記ウェブ・ページ上のエリアのユーザ選択に応答して識別される、請求項8に記載の方法。
  13. 前記ユーザ選択が、前記ウェブ・ページ上の前記関心のある要素の周りに輪郭を引くステップを含む、請求項12に記載の方法。
  14. 前記複数のクライアント・デバイスのうちのクライアント・デバイスが、非同期でロードされ得る関心のあるウェブ・ページ要素およびそれらの子を定義するために、非同期モジュール定義(AMD)アプリケーション・プログラミング・インタフェース(API)を利用する、請求項8に記載の方法。
  15. 請求項8〜14の何れか1項に記載の方法の各ステップをコンピュータに実行させる、コンピュータ・プログラム。
  16. 請求項15に記載の前記コンピュータ・プログラムをコンピュータ可読ストレージ媒体に記録した、コンピュータ可読ストレージ媒体。
JP2016517103A 2013-06-06 2014-05-13 ウェブ・ページのロードを最適化するためのコンピュータ・プログラム製品、システム、および方法 Active JP6328233B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/911,953 US10803232B2 (en) 2013-06-06 2013-06-06 Optimizing loading of web page based on aggregated user preferences for web page elements of web page
US13/911,953 2013-06-06
PCT/CA2014/050445 WO2014194415A1 (en) 2013-06-06 2014-05-13 Optimizing loading of web page based on aggregated user preferences for web page elements of web page

Publications (2)

Publication Number Publication Date
JP2016526230A JP2016526230A (ja) 2016-09-01
JP6328233B2 true JP6328233B2 (ja) 2018-05-23

Family

ID=52006558

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016517103A Active JP6328233B2 (ja) 2013-06-06 2014-05-13 ウェブ・ページのロードを最適化するためのコンピュータ・プログラム製品、システム、および方法

Country Status (5)

Country Link
US (4) US10803232B2 (ja)
JP (1) JP6328233B2 (ja)
CN (1) CN105284075A (ja)
GB (1) GB2529967A (ja)
WO (1) WO2014194415A1 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9323746B2 (en) * 2011-12-06 2016-04-26 At&T Intellectual Property I, L.P. System and method for collaborative language translation
JP2015052821A (ja) * 2013-09-05 2015-03-19 株式会社東芝 通信装置および通信方法
US9690854B2 (en) * 2013-11-27 2017-06-27 Nuance Communications, Inc. Voice-enabled dialog interaction with web pages
US10855797B2 (en) * 2014-06-03 2020-12-01 Viasat, Inc. Server-machine-driven hint generation for improved web page loading using client-machine-driven feedback
WO2016168983A1 (en) * 2015-04-21 2016-10-27 Guangzhou Ucweb Computer Technology Co., Ltd. Method and electronic device for displaying web page
CN106202315A (zh) * 2016-06-30 2016-12-07 北京奇虎科技有限公司 数据处理的方法及装置
CN107122448A (zh) * 2017-04-25 2017-09-01 广州市诚毅科技软件开发有限公司 一种前端页面请求的预计响应时间的智能显示方法及装置
US10860346B2 (en) * 2017-08-15 2020-12-08 Sap Se Server-side internationalization framework for web applications
CN109901832A (zh) * 2019-01-17 2019-06-18 平安城市建设科技(深圳)有限公司 可视化网页制作方法、装置、设备及存储介质
US11159642B2 (en) * 2019-07-19 2021-10-26 Cloudflare, Inc. Site and page specific resource prioritization
US11250096B1 (en) 2020-09-15 2022-02-15 International Business Machines Corporation Navigation for screen readers using data analytics
CN112182454A (zh) * 2020-09-30 2021-01-05 北京三快在线科技有限公司 一种网页优化的方法、装置及存储介质、电子设备
CN112887381B (zh) * 2021-01-15 2022-07-19 中国地质大学(武汉) 用于面向特定网络入口的新内容检测和汇聚方法及装置

Family Cites Families (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5708845A (en) * 1995-09-29 1998-01-13 Wistendahl; Douglass A. System for mapping hot spots in media content for interactive digital media program
US6456600B1 (en) * 1999-04-28 2002-09-24 3Com Corporation Complex node representation in an asynchronous transfer mode PNNI network
WO2001045018A1 (en) * 1999-12-17 2001-06-21 Dorado Network Systems Corporation Purpose-based adaptive rendering
US7412644B2 (en) 2000-02-04 2008-08-12 Aol Llc, A Delaware Limited Liability Company System and process for delivering and rendering scalable web pages
AUPQ808700A0 (en) 2000-06-09 2000-07-06 Honeywell Limited Human-machine interface
US20020075302A1 (en) * 2000-12-15 2002-06-20 Xerox Corporation Method of displaying hypertext based on a prominence rating
IL157137A0 (en) 2001-01-31 2004-02-08 Computer Ass Think Inc System and method for defining and presenting a composite web page
US7581170B2 (en) 2001-05-31 2009-08-25 Lixto Software Gmbh Visual and interactive wrapper generation, automated information extraction from Web pages, and translation into XML
US20050086344A1 (en) * 2003-10-15 2005-04-21 Eaxis, Inc. Method and system for unrestricted, symmetric remote scripting
KR100462292B1 (ko) * 2004-02-26 2004-12-17 엔에이치엔(주) 중요도 정보를 반영한 검색 결과 리스트 제공 방법 및 그시스템
WO2005091952A2 (en) 2004-03-05 2005-10-06 Zmr Communications, Inc. Method and apparatus for providing dynamic network content to target devices
US7426508B2 (en) * 2004-03-11 2008-09-16 International Business Machines Corporation Systems and methods for user-constructed hierarchical interest profiles and information retrieval using same
US20060123042A1 (en) * 2004-12-07 2006-06-08 Micrsoft Corporation Block importance analysis to enhance browsing of web page search results
US8225195B1 (en) * 2004-12-15 2012-07-17 Amazon Technologies, Inc. Displaying links at varying levels of prominence to reveal emergent paths based on user interaction
US20120179564A1 (en) 2005-09-14 2012-07-12 Adam Soroca System for retrieving mobile communication facility user data from a plurality of providers
US20070150838A1 (en) * 2005-12-28 2007-06-28 Iewatch Software Llc Method and System for Finding and Visually Highlighting HTML Code by Directly Clicking in the Web Page
US8856145B2 (en) * 2006-08-04 2014-10-07 Yahoo! Inc. System and method for determining concepts in a content item using context
US20080168045A1 (en) * 2007-01-10 2008-07-10 Microsoft Corporation Content rank
US9064028B2 (en) 2007-04-04 2015-06-23 The Hong Kong University Of Science And Technology Custom rendering of webpages on mobile devices
US7917840B2 (en) 2007-06-05 2011-03-29 Aol Inc. Dynamic aggregation and display of contextually relevant content
US20080307308A1 (en) 2007-06-08 2008-12-11 Apple Inc. Creating Web Clips
US8037484B2 (en) * 2007-07-03 2011-10-11 International Business Machines Corporation Building compound extensible AJAX applications
KR100996682B1 (ko) * 2007-11-30 2010-11-25 주식회사 모션클라우드 리치 콘텐트 제작 시스템 및 그 방법과 그 방법에 대한컴퓨터 프로그램을 저장한 기록매체
US20090158166A1 (en) * 2007-12-14 2009-06-18 Dewar Ami H Method, system, and computer program product for automatic rearrangement of modules based on user interaction
US9418171B2 (en) 2008-03-04 2016-08-16 Apple Inc. Acceleration of rendering of web-based content
JP5056523B2 (ja) 2008-03-24 2012-10-24 富士通株式会社 表示制御装置、表示制御方法及び表示制御プログラム
US8229911B2 (en) * 2008-05-13 2012-07-24 Enpulz, Llc Network search engine utilizing client browser activity information
US8307300B1 (en) * 2008-05-13 2012-11-06 Google Inc. Content resizing and caching in multi-process browser architecture
US8364659B2 (en) * 2008-05-14 2013-01-29 Enpulz, L.L.C. Network server employing client favorites information and profiling
US8194075B2 (en) * 2008-10-01 2012-06-05 International Business Machines Corporation Method and system for generating and displaying an interactive dynamic list view of multiply connected objects
US9336191B2 (en) * 2009-05-05 2016-05-10 Suboti, Llc System, method and computer readable medium for recording authoring events with web page content
US9442621B2 (en) * 2009-05-05 2016-09-13 Suboti, Llc System, method and computer readable medium for determining user attention area from user interface events
US9330395B2 (en) * 2009-05-05 2016-05-03 Suboti, Llc System, method and computer readable medium for determining attention areas of a web page
JP5113811B2 (ja) 2009-05-12 2013-01-09 日本電信電話株式会社 ウェブページ情報表示制御装置および方法
US20110022943A1 (en) * 2009-07-23 2011-01-27 International Business Machines Corporation Document object model (dom) application framework
US20110029899A1 (en) 2009-08-03 2011-02-03 FasterWeb, Ltd. Systems and Methods for Acceleration and Optimization of Web Pages Access by Changing the Order of Resource Loading
US20110055740A1 (en) * 2009-08-28 2011-03-03 International Business Machines Corporation Defining and sharing display space templates
US8868637B2 (en) 2009-09-02 2014-10-21 Facebook, Inc. Page rendering for dynamic web pages
US10235462B2 (en) * 2009-09-16 2019-03-19 International Business Machines Corporation Analyzing an interaction history to generate a customized webpage
US20110197124A1 (en) * 2010-02-05 2011-08-11 Bryan Eli Garaventa Automatic Creation And Management Of Dynamic Content
US20130155463A1 (en) * 2010-07-30 2013-06-20 Jian-Ming Jin Method for selecting user desirable content from web pages
EP2431891A1 (en) 2010-09-20 2012-03-21 Research In Motion Limited Methods and systems of outputting content of interest
JP5801545B2 (ja) 2010-10-15 2015-10-28 キヤノン株式会社 情報処理装置、その情報処理方法及びプログラム
US20130275577A1 (en) 2010-12-14 2013-10-17 Suk Hwan Lim Selecting Content Within a Web Page
US20120257560A1 (en) * 2011-04-07 2012-10-11 Sudharshan Srinivasan Cellular data bandwidth optimization using social networking concepts
US8996987B2 (en) 2011-06-30 2015-03-31 Apple Inc. List view optimization
US9146909B2 (en) 2011-07-27 2015-09-29 Qualcomm Incorporated Web browsing enhanced by cloud computing
US9870429B2 (en) * 2011-11-30 2018-01-16 Nokia Technologies Oy Method and apparatus for web-based augmented reality application viewer
US20130212465A1 (en) 2012-02-09 2013-08-15 Alexander Kovatch Postponed rendering of select web page elements
US9183258B1 (en) * 2012-02-10 2015-11-10 Amazon Technologies, Inc. Behavior based processing of content
US8786517B2 (en) * 2012-02-21 2014-07-22 Blackberry Limited System and method for displaying a user interface across multiple electronic devices
US9325806B2 (en) 2012-02-24 2016-04-26 Qualcomm Incorporated Cooperative loading of webpages based on shared meta information
WO2013148351A1 (en) * 2012-03-30 2013-10-03 Bmenu As System and method for analyzing an electronic documents
US8862985B2 (en) 2012-06-08 2014-10-14 Freedom Scientific, Inc. Screen reader with customizable web page output
US9979587B2 (en) * 2012-06-19 2018-05-22 Salesforce.Com, Inc. Method and system for semi-synchronously exporting data
US8886799B1 (en) * 2012-08-29 2014-11-11 Google Inc. Identifying a similar user identifier
US9477376B1 (en) * 2012-12-19 2016-10-25 Google Inc. Prioritizing content based on user frequency
US9031918B2 (en) * 2012-12-27 2015-05-12 Microsoft Licensing Technology, LLC Per-user aggregation of database content
US20140222586A1 (en) * 2013-02-05 2014-08-07 Goodle Inc. Bid adjustment suggestions based on device type
US9152537B2 (en) * 2013-02-08 2015-10-06 Facebook, Inc. Semantic stack trace
JP2016163537A (ja) 2015-03-05 2016-09-05 株式会社沖データ 電源装置および印刷装置

Also Published As

Publication number Publication date
US10803232B2 (en) 2020-10-13
GB2529967A (en) 2016-03-09
US11017153B2 (en) 2021-05-25
JP2016526230A (ja) 2016-09-01
US10817653B2 (en) 2020-10-27
US20190332653A1 (en) 2019-10-31
US20140365865A1 (en) 2014-12-11
US20140365864A1 (en) 2014-12-11
US11017152B2 (en) 2021-05-25
GB201521614D0 (en) 2016-01-20
US20190332654A1 (en) 2019-10-31
WO2014194415A1 (en) 2014-12-11
CN105284075A (zh) 2016-01-27

Similar Documents

Publication Publication Date Title
JP6328233B2 (ja) ウェブ・ページのロードを最適化するためのコンピュータ・プログラム製品、システム、および方法
US11687600B2 (en) Ranking search results based upon content creation trends
US9230036B2 (en) Enhanced browser cookie management
US9232021B2 (en) Dynamically rehosting web content
WO2020199751A1 (zh) 用于加载页面图片的方法、装置和电子设备
US8825749B2 (en) Method of tracking offline user interaction in a rendered document on a mobile device
US10402464B2 (en) Methods and apparatuses for opening a webpage, invoking a client, and creating a light application
CN113590974B (zh) 推荐页面配置方法、装置、电子设备和计算机可读介质
CN108334516B (zh) 信息推送方法和装置
US20120182981A1 (en) Terminal and method for synchronization
US10021210B1 (en) Providing faster data access using multiple caching servers
US11438403B2 (en) Page presentation method and system, computer system, and computer readable medium
US11288336B2 (en) Systems and methods for providing content items in situations involving suboptimal network conditions
KR101498920B1 (ko) 오프라인 실행을 위한 웹 페이지 사전 캐싱 시스템 및 방법
US11770437B1 (en) Techniques for integrating server-side and client-side rendered content
CN113449215B (zh) 一种加载图片的方法和装置
KR20120016334A (ko) 오프라인 실행을 위한 웹 페이지 사전 캐싱 시스템 및 방법
EP2672399A1 (en) Methods, apparatuses and computer program products for enabling modification of content delivered to mobile browsers
Kao et al. Offline web browsing for mobile devices
CN103914515A (zh) 一种用于在目标页面中发布目标资源的方法与设备
CN114756796A (zh) 显示图像的方法、装置、设备和计算机可读介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170411

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180322

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180417

R150 Certificate of patent or registration of utility model

Ref document number: 6328233

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150