US9916390B2ActiveUtilityA1

Managing web browser cache for offline browsing

Assignee: YANDEX EUROPE AGPriority: Jul 30, 2014Filed: Jan 30, 2015Granted: Mar 13, 2018
Est. expiryJul 30, 2034(~8 yrs left)· nominal 20-yr term from priority
G06F 17/30887G06F 17/30902G06F 17/30967G06F 17/30575G06F 17/30321G06F 17/30598G06F 17/30867G06F 17/30117G06F 17/30884G06F 17/30864G06F 17/3064G06F 17/30377G06F 16/9574G06F 16/27G06F 16/162G06F 16/285G06F 16/951G06F 16/2228G06F 16/2379G06F 16/3322G06F 16/9032G06F 16/9535G06F 16/9562G06F 16/9566G06F 16/24552G06F 16/2372G06F 15/8069H04M 3/42G06F 16/9538
62
PatentIndex Score
2
Cited by
36
References
9
Claims

Abstract

Disclosed are systems and methods for managing a browser cache offline. An example method comprises storing in a cache of a web browser on a user device information about a plurality of contents of a web page visited by a user during one or more web browsing sessions; determining logical relationships among the plurality of the contents of the web page; associating the plurality of contents of the web page with a cluster based on the determined logical relationships; receiving a request to load a web page from the web browser on the user device; upon detecting that the user device is offline, determining and detecting that the requested web page is stored in the cache and is associated with a cluster, and retrieving from the cache for off-line browsing on the user device the plurality of contents of the requested web page associated with the identified cluster.

Claims

exact text as granted — not AI-modified
The invention claimed is: 
     
       1. A computer-implemented method for managing a browser cache to facilitate offline browsing by a web browser associated with the browser cache, the web browser executable by a user device, the method executable by the user device, the method comprising:
 storing in the browser cache of the web browser on the user device information about a first plurality of contents of a first web page visited by a user during one or more web browsing sessions; 
 storing in the browser cache of the web browser on the user device information about a second plurality of contents of a second web page visited by the user during one or more web browsing sessions, the first plurality of contents of the first web page and the second plurality of contents of the second web page forming a total plurality of contents of the first and the second web pages; 
 analyzing, by the user device, the total plurality of contents of the first and the second web pages; 
 determining, by the user device, logical relationships among the total plurality of contents of the first and the second web pages, the logical relationships comprising a contextual relationship among the total plurality of contents of the first and the second web pages, the logical relationships between first and second portions of the total plurality of contents of the first and the second web pages existing when the second portion is opened from a link embedded in the first portion; 
 associating at least a portion of the total plurality of contents of the first and the second web pages with a cluster in the browser cache based on the determined logical relationships among the total plurality of contents of the first and the second web pages, the at least a portion of the total plurality of contents of the first and the second web pages comprising at least some content from the first plurality of contents of the first web page and at least some content from the second plurality of contents of the second web page, the cluster being assigned a given unique identifier; 
 storing, in the browser cache, the given unique identifier with each of the at least the portion of the total plurality of contents of the first and the second web pages thereby grouping each of the at least the portion of the total plurality of contents of the first and the second web pages into the cluster in the browser cache; 
 determining that a given content of the total plurality of contents of the first and the second web pages is unimportant for the user based on user interactions with the respective first and second web pages being indicative of non-importance of the given content to the user; 
 de-clustering the given content from the cluster; 
 receiving a request to load the first and the second web pages from the web browser on the user device; 
 upon detecting that the user device is offline, determining if the first and the second web pages are stored in the cache and if the first and the second web pages are associated with the cluster; 
 when the first and the second web pages are stored in the cache and associated with the cluster, retrieving from the cache for offline browsing on the user device the at least the portion of the total plurality of contents of the first and the second web pages associated with the cluster excluding the given content having been de-clustered from the cluster; 
 receiving from the user via the web browser one or more edits to at least a portion of a given web page contents when the user device is offline; 
 associating an edited portion of the given web page contents with the cluster with which said web page is associated; 
 storing the given unique identifier with the edited portion and with the given web page contents in the browser cache thereby grouping the edited portion and the given web page contents into the cluster in the browser cache; and 
 when the user device is online, synchronizing the edited portion with the given web page contents stored in the browser cache with a remote web server. 
 
     
     
       2. The method of  claim 1 , wherein the logical relationships comprise a temporal relationship among the total plurality of contents of the first and the second web pages in connection with each respective time when each of the total plurality of contents is loaded on the user device. 
     
     
       3. The method of  claim 1 , wherein the logical relationships comprise a similarity of web addresses of the at least the portion of the total plurality of contents of the first and the second web pages. 
     
     
       4. The method of  claim 1 , wherein the user interactions with the respective web page being indicative of the non-importance of the given content to the user comprise at least one of:
 time of the last viewing by the user of the respective web page; 
 time spent by the user viewing the respective web page; 
 number of operations performed by the user on the respective web page; and 
 whether the respective web page is bookmarked by the user. 
 
     
     
       5. A computer-based system for managing a browser cache on a user device to facilitate offline browsing by a web browser associated with the browser cache, the web browser executable by the user device, the system comprising:
 a cache of a web browser configured to store in the browser cache of the web browser on the user device information about (i) a first plurality of contents of a first web page visited by a user during one or more web browsing sessions, and (ii) a second plurality of contents of a second web page visited by the user during one or more web browsing sessions, the first plurality of contents of the first web page and the second plurality of contents of the second web page forming a total plurality of contents of the first and the second web pages; 
 a logical relationship determination module configured to (i) analyze the total plurality of contents of the first and the second web pages, and (ii) determine logical relationships among the total plurality of contents of the first and the second web pages, the logical relationships comprising a contextual relationship among the total plurality of contents of the first and the second web pages, the logical relationships between first and second portions of the total plurality of contents of the first and the second web pages existing when the second portion is opened from a link embedded in the first portion; 
 a clustering module configured to:
 associate at least a portion of the total plurality of contents of the first and the second web pages with a cluster in the browser cache based on the determined logical relationships among the total plurality of contents of the first and the second web pages, the at least a portion of the total plurality of contents of the first and the second web pages comprising at least some content from the first plurality of contents of the first web page and at least some content from the second plurality of contents of the second web page, the cluster being assigned a given unique identifier; and 
 store, in the browser cache, the given unique identifier with each of the at least the portion of the total plurality of contents of the first and the second web pages thereby grouping each of the at least the portion of the total plurality of contents of the first and the second web pages into the cluster in the browser cache; and 
 determine that a given content of the total plurality of contents of the first and the second web pages is unimportant for the user based on user interactions with the respective first and second web pages being indicative of non-importance of the given content to the user; and 
 de-cluster the given content from the cluster; 
 
 an interface module configured to receive a request to load the first and the second web pages from the web browser on the user device; 
 a device offline status determination module configured to detect that the user device is offline and determine if the first and the second web pages are stored in the cache and if the first and the second web pages are associated with the cluster; 
 a retrieving module configured to retrieve from the cache for offline browsing on the user device the at least the portion of the total plurality of contents of the first and the second web pages associated with the cluster excluding the given content having been de-clustered from the cluster when the first and the second web pages are stored in the cache and associated with the cluster; 
 the interface module further configured to receive from the user via the web browser one or more edits to at least a portion of a given web page contents when the user device is offline; 
 the clustering module further configured to associate an edited portion of the given web page contents with the cluster with which said web page is associated; 
 the cache further configured to store the given unique identifier with the edited portion of the given web page contents thereby grouping the edited portion into the cluster; and 
 a synchronization module configured to, when the user device is online, synchronize the edited portion of the given web page contents stored in the browser cache with a remote web server. 
 
     
     
       6. The system of  claim 5 , wherein the logical relationships comprise a temporal relationship among the total plurality of contents of the first and the second web pages in connection with each respective time when each of the total plurality of contents is loaded on the user device. 
     
     
       7. The system of  claim 5 , wherein the logical relationships comprise a similarity of web addresses of the at least the portion of the total plurality of contents of the first and the second web pages. 
     
     
       8. The system of  claim 5 , wherein the user interactions with the respective web page being indicative of the non-importance of the given content to the user comprise at least one of:
 time of the last viewing by the user of the respective web page; 
 time spent by the user viewing the respective web page; 
 number of operations performed by the user on the respective web page; and 
 whether the respective web page is bookmarked by the user. 
 
     
     
       9. A computer-readable storage medium comprising computer-executable instructions for managing a browser cache on a user device to facilitate offline browsing by a web browser associated with the browser cache, the web browser executable by the user device, the instructions comprising:
 storing in the browser cache of the web browser on the user device information about a first plurality of contents of a first web page visited by a user during one or more web browsing sessions; 
 storing in the browser cache of the web browser on the user device information about a second plurality of contents of a second web page visited by the user during one or more web browsing sessions, the first plurality of contents of the first web page and the second plurality of contents of the second web page forming a total plurality of contents of the first and the second web pages; 
 analyzing, by the user device, the total plurality of contents of the first and the second web pages; 
 determining, by the user device, logical relationships among the total plurality of contents of the first and the second web pages, the logical relationships comprising a contextual relationship among the total plurality of contents of the first and the second web pages, the logical relationships between first and second portions of the total plurality of contents of the first and the second web pages existing when the second portion is opened from a link embedded in the first portion; 
 associating at least a portion of the total plurality of contents of the first and the second web pages with a cluster in the browser cache based on the determined logical relationships among the total plurality of contents of the first and the second web pages, the at least a portion of the total plurality of contents of the first and the second web pages comprising at least some content from the first plurality of contents of the first web page and at least some content from the second plurality of contents of the second web page, the cluster being assigned a given unique identifier; 
 storing, in the browser cache, the given unique identifier with each of the at least the portion of the total plurality of contents of the first and the second web pages thereby grouping each of the at least the portion of the total plurality of contents of the first and the second web pages into the cluster in the browser cache; 
 determining that a given content of the total plurality of contents of the first and the second web pages is unimportant for the user based on user interactions with the respective first and second web pages being indicative of non-importance of the given content to the user; 
 de-clustering the given content from the cluster; 
 receiving a request to load the first and the second web pages from the web browser on the user device; 
 upon detecting that the user device is offline, determining if the first and the second web pages are stored in the cache and if the first and the second web pages are associated with the cluster; 
 when the first and the second web pages are stored in the cache and associated with the cluster, retrieving from the cache for offline browsing on the user device the at least the portion of the total plurality of contents of the first and the second web pages associated with the cluster excluding the given content having been de-clustered from the cluster 
 receiving from the user via the web browser one or more edits to at least a portion of a given web page contents when the user device is offline; 
 associating an edited portion of the given web page contents with the cluster with which said web page is associated; 
 storing the given unique identifier with the edited portion and with the given web page contents in the browser cache thereby grouping the edited portion and the given web page contents into the cluster in the browser cache; and 
 when the user device is online, synchronizing the edited portion with the given web page contents stored in the browser cache with a remote web server.

Join the waitlist — get patent alerts

Track US9916390B2 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.