IP Library Granted Patent US 11,763,376
Granted Patent B2
US 11,763,376 · App. 17/867,468 · Granted Sep 19, 2023

System, manufacture, and method for efficiently identifying and segmenting product webpages on an eCommerce website

Inventor: Allen O'Neill (Dublin, IE)
Assignee: Web Data Works Ltd.
G06Q30/0641G06F40/109G06F40/143G06V10/774G06V30/413G06Q10/087
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 11,763,376
App. No.
17/867,468
Granted
Sep 19, 2023
Kind
B2
Abstract

Methods, devices, and system for generating an updated webpage. A computing device may retrieve a product webpage, generate a structural model of the retrieved product webpage, and determine whether the generated structural model matches a stored structural model of another webpage retrieved from the web address. The computing device may extract product information from the generated structural model based on a previously stored mapping of nodes in the stored structural model to the product fields, or generate a mapping and extract the product information from the generated structural model based on the generated mapping, based on whether the generated structural model matches the stored structural model of another webpage retrieved from the web address. The computing device may generate an updated webpage based on the extracted product information.

Claims (99)

1. A method of generating an updated webpage, comprising:

receiving, by a processor in a computing device, user input that includes a plurality of web addresses;

determining, by the processor, whether product information has previously been extracted from a product webpage from a web address in the plurality of web addresses included in the received user input;

retrieving, by the processor, the product webpage from the web address in response to determining that the product information has not previously been extracted from the product webpage from the web address in the plurality of web addresses included in the received user input;

generating, by the processor, a structural model of the retrieved product webpage, the generated structural model including nodes that represent the product fields;

determining, by the processor, whether the generated structural model matches a stored structural model of another webpage retrieved from the web address;

in response to determining that the generated structural model matches the stored structural model of another webpage retrieved from the web address:

extracting, by the processor, product information from the generated structural model based on a previously stored mapping of nodes in the stored structural model to the product fields;

in response to determining that the generated structural model does not match the stored structural model of another webpage retrieved from the web address:

generating, by the processor, a mapping of nodes in the generated structural model to the product fields; and

extracting, by the processor, the product information from the generated structural model based on the generated mapping;

generating the updated webpage based on the extracted product information; and

sending the updated webpage to a second computing device for display on an electronic display of the second computing device.

2. The method of claim 1 , wherein generating the mapping of nodes in the generated structural model to the product fields comprises generating mappings from locations in the generated structural model to the product fields.

3. The method of claim 1 , wherein generating the mapping of nodes in the generated structural model to the product fields comprises:

determining one or more characteristics associated with a product field; and

determining whether a portion of the generated structural model includes the determined one or more characteristics.

4. The method of claim 3 , wherein determining whether the portion of the generated structural model includes the determined one or more characteristics comprises:

determining a threshold value for the product field;

determining a weighted contribution value for each of the determined one or more characteristics;

determining a total contribution value based on a sum of all the determined weighted contribution values;

determining whether the determined total contribution value meets or exceeds the determined threshold value; and

in response to determining that the determined total contribution value meets or exceeds the threshold value:

determining that the portion of the generated structural model includes the determined one or more characteristics.

5. The method of claim 1 , wherein generating the mapping of nodes in the generated structural model to the product fields comprises using machine learning to generate the mapping of nodes in the generated structural model to the product fields by:

training a machine learning component using a plurality of structural models; and

using the trained machine learning component to perform inference on the generated structural model.

6. The method of claim 1 , wherein generating the structural model of the retrieved product webpage comprises generating a structural model for only an initial viewport of the retrieved product webpage.

7. The method of claim 1 , further comprising:

associating a condition with the product information on the retrieved product webpage based on user input; and

comparing the extracted product information with the associated condition to determine whether the extracted product information meets the associated condition,

wherein generating the updated webpage based on the extracted product information and sending the updated webpage to the second computing device for display on the electronic display of the second computing device comprises generating the updated webpage based on the extracted product information and sending the updated webpage to the second computing device for display on the electronic display of the second computing device in response to determining that the extracted product information meets the associated condition.

8. A computing device, comprising:

a processor configured with processor-executable instructions to perform operations comprising:

receiving user input that includes a plurality of web addresses;

determining whether product information has previously been extracted from a product webpage from a web address in the plurality of web addresses included in the received user input;

retrieving the product webpage from the web address in response to determining that the product information has not previously been extracted from the product webpage from the web address in the plurality of web addresses included in the received user input;

generating a structural model of the retrieved product webpage, the generated structural model including nodes that represent the product fields;

determining whether the generated structural model matches a stored structural model of another webpage retrieved from the web address;

in response to determining that the generated structural model matches the stored structural model of another webpage retrieved from the web address:

extracting product information from the generated structural model based on a previously stored mapping of nodes in the stored structural model to the product fields;

in response to determining that the generated structural model does not match the stored structural model of another webpage retrieved from the web address:

generating a mapping of nodes in the generated structural model to the product fields; and

extracting the product information from the generated structural model based on the generated mapping;

generating the updated webpage based on the extracted product information; and

sending the updated webpage to a second computing device for display on an electronic display of the second computing device.

9. The computing device of claim 8 , wherein the processor is configured with processor-executable instructions to perform operations such that generating the mapping of nodes in the generated structural model to the product fields comprises generating mappings from locations in the generated structural model to the product fields.

10. The computing device of claim 8 , wherein the processor is configured with processor-executable instructions to perform operations such that generating the mapping of nodes in the generated structural model to the product fields comprises:

determining one or more characteristics associated with a product field; and

determining whether a portion of the generated structural model includes the determined one or more characteristics.

11. The computing device of claim 10 , wherein the processor is configured with processor-executable instructions to perform operations such that determining whether the portion of the generated structural model includes the determined one or more characteristics comprises:

determining a threshold value for the product field;

determining a weighted contribution value for each of the determined one or more characteristics;

determining a total contribution value based on a sum of all the determined weighted contribution values;

determining whether the determined total contribution value meets or exceeds the determined threshold value; and

in response to determining that the determined total contribution value meets or exceeds the threshold value:

determining that the portion of the generated structural model includes the determined one or more characteristics.

12. The computing device of claim 8 , wherein the processor is configured with processor-executable instructions to perform operations such that generating the mapping of nodes in the generated structural model to the product fields comprises:

using machine learning to generate the mapping of nodes in the generated structural model to the product fields, comprising:

training a machine learning component using a plurality of structural models; and

using the trained machine learning component to perform inference on the generated structural model.

13. The computing device of claim 8 , wherein the processor is configured with processor-executable instructions to perform operations such that generating the structural model of the retrieved product webpage comprises generating a structural model for only an initial viewport of the retrieved product webpage.

14. The computing device of claim 8 , wherein:

the processor is configured with processor-executable instructions to perform operations further comprising:

associating a condition with the product information on the retrieved product webpage based on user input; and

comparing the extracted product information with the associated condition to determine whether the extracted product information meets the associated condition; and

the processor is configured with processor-executable instructions to perform operations such that generating the updated webpage based on the extracted product information and sending the updated webpage to the second computing device for display on the electronic display of the second computing device comprises generating the updated webpage based on the extracted product information and sending the updated webpage to the second computing device for display on the electronic display of the second computing device in response to determining that the extracted product information meets the associated condition.

15. A non-transitory computer readable storage medium having stored thereon processor-executable software instructions configured to cause a processor in a computing device to perform operations for generating an updated webpage, the operations comprising:

receiving user input that includes a plurality of web addresses;

determining whether product information has previously been extracted from a product webpage from a web address in the plurality of web addresses included in the received user input;

retrieving the product webpage from the web address in response to determining that the product information has not previously been extracted from the product webpage from the web address in the plurality of web addresses included in the received user input;

generating a structural model of the retrieved product webpage, the generated structural model including nodes that represent the product fields;

determining whether the generated structural model matches a stored structural model of another webpage retrieved from the web address;

in response to determining that the generated structural model matches the stored structural model of another webpage retrieved from the web address:

extracting product information from the generated structural model based on a previously stored mapping of nodes in the stored structural model to the product fields;

in response to determining that the generated structural model does not match the stored structural model of another webpage retrieved from the web address:

generating a mapping of nodes in the generated structural model to the product fields, and extracting the product information from the generated structural model based on the generated mapping;

generating the updated webpage based on the extracted product information; and

sending the updated webpage to a second computing device for display on an electronic display of the second computing device.

16. The non-transitory computer readable storage medium of claim 15 , wherein the stored processor-executable instructions are configured to cause the processor to perform operations such that generating the mapping of nodes in the generated structural model to the product fields comprises generating mappings from locations in the generated structural model to the product fields.

17. The non-transitory computer readable storage medium of claim 15 , wherein the stored processor-executable instructions are configured to cause the processor to perform operations such that generating the mapping of nodes in the generated structural model to the product fields comprises:

determining one or more characteristics associated with a product field; and

determining whether a portion of the generated structural model includes the determined one or more characteristics, comprising:

determining a threshold value for the product field;

determining a weighted contribution value for each of the determined one or more characteristics;

determining a total contribution value based on a sum of all the determined weighted contribution values;

determining whether the determined total contribution value meets or exceeds the determined threshold value; and

in response to determining that the determined total contribution value meets or exceeds the threshold value:

determining that the portion of the generated structural model includes the determined one or more characteristics.

18. The non-transitory computer readable storage medium of claim 15 , wherein the stored processor-executable instructions are configured to cause the processor to perform operations such that generating the mapping of nodes in the generated structural model to the product fields comprises:

using machine learning to generate the mapping of nodes in the generated structural model to the product fields, comprising:

training a machine learning component using a plurality of structural models; and

using the trained machine learning component to perform inference on the generated structural model.

19. The non-transitory computer readable storage medium of claim 15 , wherein the stored processor-executable instructions are configured to cause the processor to perform operations such that generating the structural model of the retrieved product webpage comprises generating a structural model for only an initial viewport of the retrieved product webpage.

20. The non-transitory computer readable storage medium of claim 15 , wherein:

the stored processor-executable instructions are configured to cause the processor to perform operations further comprising:

associating a condition with the product information on the retrieved product webpage based on user input; and

comparing the extracted product information with the associated condition to determine whether the extracted product information meets the associated condition; and

the stored processor-executable instructions are configured to cause the processor to perform operations such that generating the updated webpage based on the extracted product information and sending the updated webpage to the second computing device for display on the electronic display of the second computing device comprises generating the updated webpage based on the extracted product information and sending the updated webpage to the second computing device for display on the electronic display of the second computing device in response to determining that the extracted product information meets the associated condition.

Assignments (2)
CHANGE OF NAME Recorded Feb 5, 2024
From: WEB DATA WORKS LIMITED
To: SOCIAL VOICE LIMITED
Reel/Frame 066494/0089 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 18, 2022
From: O'NEILL, ALLEN
To: WEB DATA WORKS LTD.
Reel/Frame 060538/0991 →
Continuity (3)
Provisional Application 63287387 · Dec 8, 2021
Provisional Application 63223299 · Jul 19, 2021
Related Publication 20230020751A1 · Jan 19, 2023
Cited By (1)
US 12,321,980