IP Library Granted Patent US 12,189,694
Granted Patent B2
US 12,189,694 · App. 18/330,422 · Granted Jan 7, 2025

Automated web page accessing

Inventor: Timur Gabdrakipov (San Diego, CA)
Assignee: GAP Intelligence, Inc.
G06F16/951G06F16/958H04L63/0281
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 12,189,694
App. No.
18/330,422
Granted
Jan 7, 2025
Kind
B2
Abstract

An apparatus for accessing web pages includes: a communication interface; and a processor communicatively coupled to the communication interface and configured to: receive a web crawler request, from the communication interface, to access a specified web page; select a first selected proxy server from among a plurality of proxy servers; send, via the communication interface, a first access request to the first selected proxy server requesting access to the specified web page; receive, via the communication interface, a response from the selected proxy server corresponding to the first access request; analyze the response from the selected proxy server; select a second selected proxy server from among the plurality of proxy servers in response to determining from the response that the first access request was denied; and send, via the communication interface, a second access request to the second selected proxy server requesting access to the specified web page.

Claims (31)

1. An apparatus for accessing web pages, the apparatus comprising:

a communication interface; and

a processor communicatively coupled to the communication interface and configured to:

receive, via the communication interface, an indication that a first access request, from a first proxy server requesting access to a specified web page, has been denied;

select a second proxy server in response to receiving the indication that the first access request was denied; and

send, via the communication interface, a second access request to the second proxy server requesting access to the specified web page.

2. The apparatus of claim 1 , wherein the processor is configured to schedule a third access request, requesting access to the specified web page, for later transmission to a third proxy server in response to a threshold amount of failed access to the specified web page.

3. The apparatus of claim 2 , wherein the threshold amount of failed access is a threshold number of access requests being denied access to the specified web page.

4. The apparatus of claim 2 , wherein the threshold amount of failed access is a threshold amount of time since the first access request is sent.

5. The apparatus of claim 2 , wherein to schedule the third access request the processor is configured to place the third access request in a queue of web page requests.

6. The apparatus of claim 1 , wherein to select the second proxy server the processor is configured to select randomly from among a plurality of proxy servers.

7. The apparatus of claim 1 , wherein the processor is configured to select the second proxy server in accordance with one or more criteria regarding repeat selection of the first proxy server.

8. The apparatus of claim 7 , wherein the one or more criteria regarding repeat selection of the first proxy server ensure at least one of: that different proxy servers are used for transmitting consecutive access requests for the specified web page; or that different proxy servers are used for transmitting consecutive access requests to a single website host.

9. A non-transitory, processor-readable storage medium comprising processor-readable instructions stored thereon configured to cause a processor to:

receive an indication that a first access request, from a first proxy server requesting access to a specified web page, has been denied;

select a second proxy server in response to receiving the indication that the first access request was denied; and

send, via a communication interface, a second access request to the second proxy server requesting access to the specified web page.

10. The storage medium of claim 9 , wherein the instructions are configured to cause the processor to schedule a third access request, requesting access to the specified web page, for later transmission to a third proxy server in response to a threshold amount of failed access to the specified web page.

11. The storage medium of claim 10 , wherein the threshold amount of failed access is a threshold number of access requests being denied access to the specified web page.

12. The storage medium of claim 10 , wherein the threshold amount of failed access is a threshold amount of time since the first access request is sent.

13. The storage medium of claim 10 , wherein to schedule the third access request the instructions are configured to cause the processor to place the third access request in a queue of web page requests.

14. The storage medium of claim 9 , wherein to select the second proxy server the instructions are configured to cause the processor to select randomly from among a plurality of proxy servers.

15. The storage medium of claim 9 , wherein the processor-readable instructions configured to cause the processor to select the second proxy server comprise processor-readable instructions configured to cause the processor to select the second proxy server in accordance with one or more criteria regarding repeat selection of the first proxy server.

16. The storage medium of claim 15 , wherein the one or more criteria regarding repeat selection of the first proxy server ensure at least one of: that different proxy servers are used for transmitting consecutive access requests for the specified web page; or that different proxy servers are used for transmitting consecutive access requests to a single website host.

17. A method for accessing a web page, the method comprising:

receiving, via a communication interface, an indication that a first access request, from a first proxy server requesting access to a specified web page, has been denied;

selecting a second proxy server in response to receiving the indication that the first access request was denied; and

sending, via the communication interface, a second access request to the second proxy server requesting access to the specified web page.

18. The method of claim 17 , wherein the method is for accessing web pages from a crawler adapter that includes the communication interface, the method further comprising establishing always-on connections between the crawler adapter and a plurality of proxy servers, including the first proxy server and the second proxy server, such that the crawler adapter is connected to the second proxy server before selecting the second proxy server from among the plurality of proxy servers.

19. The method of claim 17 , further comprising scheduling a third request requesting access to the specified web page for later transmission to one of a plurality of proxy servers, including the first proxy server and the second proxy server, in response to a threshold amount of failed access to the specified web page.

20. The method of claim 17 , wherein selecting the second proxy server comprises selecting the second proxy server in accordance with one or more criteria regarding repeat selection of the first proxy server.

Assignments (3)
SECURITY INTEREST Recorded Jan 28, 2026
From: GAP INTELLIGENCE, LLC
To: FIDUS INVESTMENT CORPORATION
Reel/Frame 073614/0653 →
CERTIFICATE OF CONVERSION Recorded Jan 21, 2026
From: GAP INTELLIGENCE, INC. (CALIFORNIA LIMITED LIABILITY COMPANY)
To: GAP INTELLIGENCE, LLC (DELAWARE LIMITED LIABILITY COMPANY)
Reel/Frame 074476/0777 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 7, 2023
From: GABDRAKIPOV, TIMUR
To: GAP INTELLIGENCE, INC.
Reel/Frame 063880/0478 →
Continuity (3)
Continuation 17828405 · May 31, 2022
Continuation 16677861 · Nov 8, 2019
Related Publication 20230315793A1 · Oct 5, 2023
References Cited (72)
US 6418452B1 · Kraft et al. · 2002 [cited by applicant]
US 6487555B1 · Bharat · 2002 [cited by examiner]
US 6516337B1 · Tripp · 2003 [cited by examiner]
US 6662230B1 · Eichstaedt et al. · 2003 [cited by applicant]
US 6938170B1 · Kraft et al. · 2005 [cited by applicant]
US 7334039B1 · Majkut et al. · 2008 [cited by applicant]
US 7546370B1 · Acharya et al. · 2009 [cited by applicant]
US 8042112B1 · Zhu et al. · 2011 [cited by applicant]
US 8782031B2 · Wierman et al. · 2014 [cited by applicant]
US 8868535B1 · Paiz · 2014 [cited by applicant]
US 9424340B1 · Kapoor · 2016 [cited by examiner]
US 10326789B1 · Vines et al. · 2019 [cited by applicant]
US 10567541B2 · Vignali · 2020 [cited by applicant]
US 10601948B1 · Juravicius · 2020 [cited by examiner]
US 20020103823A1 · Jackson · 2002 [cited by examiner]
US 20030135487A1 · Beyer · 2003 [cited by examiner]
US 20040025055A1 · Hamadi et al. · 2004 [cited by applicant]
US 20050251863A1 · Sima · 2005 [cited by examiner]
US 20060224592A1 · Kapadia et al. · 2006 [cited by applicant]
US 20070214129A1 · Ture et al. · 2007 [cited by applicant]
US 20070283425A1 · Ture et al. · 2007 [cited by applicant]
US 20080082662A1 · Dandliker et al. · 2008 [cited by applicant]
US 20080183889A1 · Andreev et al. · 2008 [cited by applicant]
US 20090204575A1 · Olston · 2009 [cited by examiner]
US 20090265342A1 · Shuster · 2009 [cited by examiner]
US 20100095375A1 · Krishnamurthy · 2010 [cited by examiner]
US 20110078131A1 · Wen et al. · 2011 [cited by applicant]
US 20110106786A1 · Waters et al. · 2011 [cited by applicant]
US 20110106787A1 · Waters et al. · 2011 [cited by applicant]
US 20110283359A1 · Prince · 2011 [cited by examiner]
US 20110307467A1 · Severance · 2011 [cited by applicant]
US 20120066576A1 · Zhu · 2012 [cited by examiner]
US 20120117458A1 · Holloway · 2012 [cited by examiner]
US 20120173552A1 · Zhu · 2012 [cited by examiner]
US 20120221546A1 · Rafsky · 2012 [cited by examiner]
US 20120324113A1 · Prince · 2012 [cited by examiner]
US 20130117252A1 · Samaddar et al. · 2013 [cited by applicant]
US 20130144858A1 · Lin et al. · 2013 [cited by applicant]
US 20130262416A1 · Devarajan et al. · 2013 [cited by applicant]
US 20130262428A1 · Devarajan et al. · 2013 [cited by applicant]
US 20140101294A1 · Li · 2014 [cited by examiner]
US 20140222974A1 · Liu · 2014 [cited by applicant]
US 20140344891A1 · Mullick et al. · 2014 [cited by applicant]
US 20150120863A1 · Wu et al. · 2015 [cited by applicant]
US 20150180875A1 · Kay · 2015 [cited by applicant]
US 20150242508A1 · Brawer et al. · 2015 [cited by applicant]
US 20160055243A1 · Xu et al. · 2016 [cited by applicant]
US 20160188717A1 · Rosenberg et al. · 2016 [cited by applicant]
US 20160275190A1 · Seed · 2016 [cited by examiner]
US 20160299971A1 · Ren et al. · 2016 [cited by applicant]
US 20170078319A1 · Thompson · 2017 [cited by examiner]
US 20170185678A1 · Zou · 2017 [cited by applicant]
US 20170193125A1 · Weisman · 2017 [cited by examiner]
US 20170237824A1 · Vignali · 2017 [cited by applicant]
US 20170322902A1 · Baldry et al. · 2017 [cited by applicant]
US 20180041530A1 · Tang et al. · 2018 [cited by applicant]
US 20180167412A1 · Barrett et al. · 2018 [cited by applicant]
US 20190303500A1 · Mathews · 2019 [cited by examiner]
US 20190340298A1 · Nistala et al. · 2019 [cited by applicant]
US 20190364029A1 · Krishnaprasad et al. · 2019 [cited by applicant]
US 20190373012A1 · Mattson et al. · 2019 [cited by applicant]
US 20190394202A1 · Wu et al. · 2019 [cited by applicant]
US 20200372086A1 · Mathews · 2020 [cited by examiner]
US 20200410031A1 · Chen · 2020 [cited by examiner]
US 20210120034A1 · Starov et al. · 2021 [cited by applicant]
US 20210141843A1 · Gabdrakipov · 2021 [cited by applicant]
US 20220100808A1 · Juravicius · 2022 [cited by applicant]
US 20220345487A1 · Starov et al. · 2022 [cited by applicant]
Shinde, Vidyesh, et al. “CrawlBot: A domain-specific pseudonymous crawler.” International Conference on Cybersecurity in Emerging Digital Era. Cham: Springer International Publishing, 2020. [cited by examiner]
Khattak, Sheharbano, et al. “Do you see what I see? differential treatment of anonymous users.” Internet Society, 2016. [cited by examiner]
Rullo, Michele, and Leonardo Querzoni. A Flexible Architecture for Secure and Anonymous Web Crawling. Diss. Dissertação ( Mestrado), Sapienza Università di Roma, Itália, 2016. [cited by examiner]
Andriesse, Dennis, Christian Rossow, and Herbert Bos. “Reliable recon in adversarial peer-to-peer botnets.” Proceedings of the 2015 Internet Measurement Conference. 2015. [cited by examiner]