goop can perform google searches without being blocked by the CAPTCHA or hitting any rate limits.
How it works?
Facebook provides a debugger tool for its scraper. Interestingly, Google doesn't limit the requests made by this debugger (whitelisted?) and hence it can be used to scrap the google search results without being blocked by the CAPTCHA.
Since facebook is involved, a facebook session
Cookie
must be supplied to the library with each request.Usage
Installation
pip install goop
Example
from goop import goop
page_1 = goop.search('red shoes', '<your facebook cookie>')
page_2 = goop.search('red_shoes', '<your facebook cookie>', page='1')
include_omitted_results = goop.search('red_shoes', '<your facebook cookie>', page='8', full=True)
dict
of following structure{
"0": {
"url": "https://example.com",
"text": "Example webpage",
"summary": "This is an example webpage whose aim is to demonstrate the usage of ..."
},
"1": {
...
cli.py
demonstrates the usage by performing google searches from the terminal with the following commandpython cli.py <query> <number_of_pages>
Legal & Disclaimer
Scraping google search results is illegal. This library is merely a proof of concept of the bypass. The author isn't responsible for the actions of the end users.