IP Library Granted Patent US 11,144,601
Granted Patent B2
US 11,144,601 · App. 15/624,578 · Granted Oct 12, 2021

Mobile web scraping

Inventor: Sateesh Kavuri (Karnataka, IN)
Assignee: Yodlee, Inc.
G06F16/951H04L67/02H04L67/12H04L67/22H04L67/2833H04L67/2842G06F2216/03G06Q30/0201H04W48/16H04W84/12
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,144,601
App. No.
15/624,578
Granted
Oct 12, 2021
Kind
B2
Abstract

Methods, systems and computer program products implementing data aggregation using distributed Web scraping are disclosed. A mobile device can scrape one or more target sites to collect data from accounts of a particular user. The scraping can occur under scraping conditions as specified by the user. The scraping conditions can include conditions based on time, power, bandwidth, usage, or any combination of the above. The scraping conditions can ensure that the scraping occurs at time that is most convenient to the user, e.g., when sufficient bandwidth is available to the mobile device or the mobile device is not performing other tasks. The mobile device can upload the scraped data to a data aggregation server under submission conditions as specified by the user. The data aggregation server can aggregate the scraped data, enrich the aggregated data, and provide the enriched data to the user through Web access.

Claims (43)

1. A method comprising:

receiving, by a mobile client device of a user and from a data aggregation server, a request to scrape account data associated with the user at one or more target sites corresponding to one or more service providers;

determining, by the mobile client device of the user based on a target database, a number of target sites from which to scrape the account data associated with the user of the mobile client device;

determining, by the mobile client device and at a first time, that an amount of time for scraping the number of target sites exceeds a pre-specified time;

in response to determining that the amount of time for scraping the number of target sites exceeds the pre-specified time, tracking, by the mobile client device, usage of the mobile client device;

determining, by the mobile client device and based on the usage, a second time for scraping the number of target sites;

in response to determining the second time for scraping the number of target sites, scraping, by the mobile client device and at the second time, the account data associated with the user of the mobile client device from the target sites, including providing respective user credentials to each target site, navigating pages of each target site, and retrieving the account data from the pages;

determining, by the mobile client device, whether a data submission condition is satisfied; and

in response to determining that the data submission condition is satisfied, providing the scraped account data associated with the user of the mobile client device from the mobile client device of the user to the data aggregation server.

2. The method of claim 1 , wherein the request is obtained by a scraping scheduler of the mobile client device of the user.

3. The method of claim 1 , wherein the request is sent from the data aggregation server according to a schedule specified by the user of the mobile client device.

4. The method of claim 1 , wherein:

the method further comprises determining, by the mobile client device of the user, whether a data scraping condition is satisfied;

the data scraping condition is specified on the mobile client device of the user and includes at least one of a first time condition, a first power condition, a first bandwidth condition, or a first device usage condition, and

the data submission condition is specified on the mobile client device of the user and includes at least one of a second time condition, a second power condition, a second bandwidth condition, or a second device usage condition.

5. The method of claim 1 , wherein:

the method further comprises determining, by the mobile client device of the user, whether a data scraping condition is satisfied; and

the data scraping condition specifies whether the scraping should occur after wakeup or before sleep.

6. The method of claim 1 , wherein:

the method further comprises determining, by the mobile client device of the user, whether a data scraping condition is satisfied; and

the data scraping condition specifies that the scraping shall occur when a Wi-Fi connection is present.

7. The method of claim 1 , wherein each condition is based on a user-specified timing mode, and automatic timing mode, and a mixed timing mode.

8. A non-transitory computer-readable medium storing instructions that, when executed by one or more processors of a mobile client device, cause the one or more processors to perform operations comprising:

receiving, by the mobile client device of a user and from a data aggregation server, a request to scrape account data associated with the user at one or more target sites corresponding to one or more service providers;

determining, by the mobile client device of the user based on a target database, a number of target sites from which to scrape the account data associated with the user of the mobile client device;

determining, by the mobile client device and at a first time, that an amount of time for scraping the number of target sites exceeds a pre-specified time;

in response to determining that the amount of time for scraping the number of target sites exceeds the pre-specified time, tracking, by the mobile client device, usage of the mobile device;

determining, by the mobile client device and based on the usage, a second time for scraping the number of target sites;

in response to determining the second time for scraping the number of target sites, scraping, by the mobile client device and at the second time, the account data associated with the user of the mobile client device from the one or more target sites, including providing respective user credentials to each target site, navigating pages of each target site, and retrieving the account data from the pages;

determining, by the mobile client device whether a data submission condition is satisfied; and

in response to determining that the data submission condition is satisfied, providing the scraped account data associated with the user of the mobile client device from the mobile client device of the user to the data aggregation server.

9. The non-transitory computer-readable medium of claim 8 , wherein the request is obtained by a scraping scheduler of the mobile client device of the user.

10. The non-transitory computer-readable medium of claim 8 , wherein the request is sent from the data aggregation server according to a schedule specified by the user of the mobile client device.

11. The non-transitory computer-readable medium of claim 8 , wherein:

the operations further comprise determining, by the mobile client device of the user, whether a data scraping condition is satisfied;

the data scraping condition is specified on the mobile client device of the user and includes at least one of a first time condition, a first power condition, a first bandwidth condition, or a first device usage condition, and

the data submission condition is specified on the mobile client device of the user and includes at least one of a second time condition, a second power condition, a second bandwidth condition, or a second device usage condition.

12. The non-transitory computer-readable medium of claim 8 , wherein:

the operations further comprise determining, by mobile client device of the user, whether a data scraping condition is satisfied; and

the data scraping condition specifies whether the scraping should occur after wakeup or before sleep.

13. The non-transitory computer-readable medium of claim 8 , wherein:

the operations further comprise determining, by the mobile client device of the user, whether a data scraping condition is satisfied; and

the data scraping condition specifies that the scraping shall occur when a Wi-Fi connection is present.

Assignments (3)
RELEASE OF SECURITY INTEREST Recorded Aug 26, 2025
From: ROYAL BANK OF CANADA, AS COLLATERAL AGENT
To: YODLEE, INC.
Reel/Frame 072118/0612 →
GRANT OF SECURITY INTEREST IN PATENT Recorded Nov 25, 2024
From: YODLEE, INC.
To: ROYAL BANK OF CANADA, AS COLLATERAL AGENT
Reel/Frame 069441/0749 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 26, 2017
From: KAVURI, SATEESH
To: YODLEE, INC.
Reel/Frame 042819/0446 →
Priority Claims (1)
IN 201741013546 · Apr 17, 2017 · national
Continuity (1)
Related Publication 20180300408A1 · Oct 18, 2018
Cited By (1)
US 12,613,933