IP Library Granted Patent US 10,540,417
Granted Patent B2
US 10,540,417 · App. 16/434,055 · Granted Jan 21, 2020

Determining web page processing state

Inventor: Benjamin De Coninck Owe (Copenhagen, DK)
Assignee: KAPOW TECHNOLOGIES
G06F16/9574G06F9/4887G06F9/548G06F16/958
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,540,417
App. No.
16/434,055
Granted
Jan 21, 2020
Kind
B2
Abstract

A method includes setting one or more parameters in a state determiner, each of the one or more parameters being based at least in part on one or more predefined processing events related to one or more queued processing tasks; determining a web page processing state of a browser based at least in part on the one or more parameters in accordance with one or more predefined criteria; and during processing of a web page by means of the browser: tracing predefined processing events that may cause creation of queued processing tasks with associated delays; invoking a delay converter to change the delays by one or more of absolute decrements, relative decrements and proportional decrements; and reducing a time that the start of execution of the one or more queued processing tasks are set to be delayed by the source code of the web page.

Claims (63)

1. A method, comprising:

setting one or more parameters (P 1 . . . Pn) in a state determiner (SD), each of the one or more parameters being based at least in part on one or more predefined processing events related to one or more queued processing tasks (QPT);

determining a web page processing state (WPPS) of a browser (WB) based at least in part on the one or more parameters (P 1 . . . Pn) in accordance with one or more predefined criteria;

communicatively coupling a web robot (WR) to the web page processing state (WPPS); and

during processing of a web page by means of the browser (WB):

tracing predefined processing events that are configured to cause creation of queued processing tasks (QPT) with associated delays;

invoking a delay converter (DC) to change the delays by one or more of absolute decrements, relative decrements and proportional decrements; and

reducing a time that the start of execution of the one or more queued processing tasks (QPT) are set to be delayed by the source code of the web page.

2. The method according to claim 1 , wherein the setting the one or more parameters in the state determiner is performed in accordance with:

a predefined processing event occurrence; and

object information related to the predefined processing event occurrence.

3. The method according to claim 1 , wherein the one or more queued processing tasks (QPT) comprise one or more of:

one or more timer tasks,

one or more asynchronous XMLHttpRequest tasks, one or more scheduled redirection tasks,

one or more cascading style sheet transition tasks, one or more queued script tasks, and one or more deferred event tasks.

4. The method according to claim 1 , wherein at least one criterion among the one or more predefined criteria is used to evaluate at least one of the one or more parameters.

5. The method according to claim 1 , wherein the predefined criteria comprise one or more of:

an existence of one or more further queued tasks; a number of the further queued tasks exceeding a threshold: a length of a chain of timer events, XMLHttpRequests or other asynchronous tasks exceeding a threshold;

a duration of no response since dispatch of an XMLHttpRequest exceeding a timeout value;

a time scheduled for a redirect or refresh of the web page exceeding a threshold;

a number of repetitions of an interval timer exceeding a threshold; and a time set for a timer event exceeding a threshold.

6. The method according to claim 1 , further comprising:

requesting the browser (WB) to process a web page, the request being submitted using a web robot (WR), wherein the queued processing tasks (QPT) are established during the browser's (WB) processing of the web page; and

retrieving the information after finding that the web page processing state (WPPS) has reached a predetermined completion value, the retrieving being performed at least partially using the web robot; and

wherein determining the web page processing state (WPPS) of the browser (WB) is performed at least partially using the state determiner (SD).

7. The method according to claim 6 , further comprising: reducing one or more delays associated with one or more of the queued processing tasks.

8. A computer program product, comprising a non-transitory computer readable medium having computer readable instructions embodied therewith, the computer readable instructions being configured to cause a computer, upon execution thereof, to: set, using a processing unit of the computer, one or more parameters (P 1 . . . Pn) in a state determiner (SD), each of the one or more parameters being based at least in part on one or more predefined processing events related to one or more queued processing tasks (QPT);

determine, using the processing unit, a web page processing state (WPPS) of a browser (WB) based at least in part on the one or more parameters (P 1 . . . Pn) in accordance with one or more predefined criteria;

communicatively couple a web robot (WR) to the web page processing state (WPPS); and

during processing of a web page by means of the browser (WB):

trace, using the processing unit, predefined processing events that are configured to cause creation of queued processing tasks (QPT) with associated delays;

invoke, using the processing unit, a delay converter (DC) to change the delays by one or more of absolute decrements, relative decrements and proportional decrements; and

reduce, using the processing unit, a time that the start of execution of the one or more queued processing tasks (OPT) are set to be delayed by the source code of the web page.

9. The computer program product according to claim 8 , wherein the computer readable program instructions configured to cause the computer, upon execution thereof, to set the one or more parameters in the state determiner are further configured to cause the computer to set the one or more parameters in accordance with:

a predefined processing event occurrence; and

object information related to the predefined processing event occurrence.

10. The computer program product according to claim 8 , wherein the queued processing tasks (OPT) comprise one or more of:

one or more timer tasks,

one or more asynchronous XMLHttpRequest tasks, one or more scheduled redirection tasks,

one or more cascading style sheet transition tasks, one or more queued script tasks, and one or more deferred event tasks.

11. The computer program product according to claim 8 , wherein at least one criterion among the one or more predefined criteria is used to evaluate one or more of the one or more parameters.

12. The computer program product according to claim 8 , wherein the one or more predefined criteria comprise one or more of:

an existence of one or more further queued tasks; a number of the further queued tasks exceeding a threshold; a length of a chain of timer events, XMLHttpRequests or other asynchronous tasks exceeding a threshold;

a duration of no response since dispatch of an XMLHttpRequest exceeding a timeout value;

a time scheduled for a redirect or refresh of the web page exceeding a threshold; a number of repetitions of an interval timer exceeding a threshold; and a time set for a timer event exceeding a threshold.

13. The computer program product according to claim 8 , further comprising computer readable instructions configured to cause the computer, upon execution thereof, to:

request the browser (WB) to process a web page, the request being submitted using a web robot (WR), wherein the queued processing tasks (QPT) are established during the browser's (WB) processing of the web page; and

retrieve the information after finding that the web page processing state (WPPS) has reached a predetermined completion value, the retrieving being performed at least partially using the web robot; and

wherein determining the web page processing state (WPPS) of the browser (WB) is performed at least partially using the state determiner (SD).

14. The computer program product according to claim 13 , further comprising computer readable instructions configured to cause the computer, upon execution thereof, to: reduce one or more delays associated with one or more of the queued processing tasks.

15. A system includes:

a processing unit; and

a memory unit, the memory unit comprising computer readable instructions configured to cause the system, upon execution thereof, to:

set one or more parameters in a state determiner, each of the one or more parameters being based at least in part on one or more predefined processing events related to one or more queued processing tasks;

determine a web page processing state of a browser based at least in part on the one or more parameters in accordance with one or more predefined criteria;

communicatively couple a web robot (WR) to the web page processing state (WPPS); and

during processing of a web page by means of the browser:

trace predefined processing events that are configured to cause creation of queued processing tasks (OPT) with associated delays;

invoke a delay converter (DC) to change the delays by one or more of absolute decrements, relative decrements and proportional decrements; and

reduce a time that the start of execution of the one or more queued processing tasks are set to be delayed by a source code of the web page.

16. The system according to claim 15 , wherein the computer readable instructions configured to cause the computer, upon execution thereof, to set the one or more parameters in the state determiner are further configured to cause the computer to set the one or more parameters in accordance with: a predefined processing event occurrence; and

object information related to the predefined processing event occurrence.

17. The system according to claim 15 , wherein the memory unit further comprises computer readable instructions configured to cause the computer, upon execution thereof, to: reduce one or more delays associated with one or more of the queued processing tasks.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 15, 2024
From: KOFAX, INC.
To: TUNGSTEN AUTOMATION CORPORATION
Reel/Frame 067428/0392 →
FIRST LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jul 20, 2022
From: KOFAX, INC.; PSIGEN SOFTWARE, INC.
To: JPMORGAN CHASE BANK, N.A. AS COLLATERAL AGENT
Reel/Frame 060757/0565 →
SECURITY INTEREST Recorded Jul 20, 2022
From: KOFAX, INC.; PSIGEN SOFTWARE, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 060768/0159 →
MERGER Recorded Feb 8, 2022
From: KAPOW TECHNOLOGIES, INC.
To: KOFAX, INC.
Reel/Frame 058931/0817 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 28, 2019
From: DE CONINCK OWE, BENJAMIN
To: KAPOW TECHNOLOGIES
Reel/Frame 049622/0259 →
Cited By (1)
US 12,669,997