Google Search Scraper
Pricing
from $4.99 / 1,000 results
Google Search Scraper
A robust, high-performance utility designed for developer automation, data integration, and AI training. Features built-in captcha bypass, headful/headless browser execution, and proxy support to scrape Google data seamlessly, reliably, and at scale.
Pricing
from $4.99 / 1,000 results
Rating
0.0
(0)
Developer
Coding Frontned
Maintained by CommunityActor stats
0
Bookmarked
21
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
Fetch bounded, localized Google web-search results and store a clean dataset containing organic results only. SERP features such as People Also Ask, related searches, featured text, and estimated totals are summarized in the run OUTPUT record instead of being mixed into the dataset.
What it does
- Returns at most 100 organic results per run, across at most 10 search pages.
- Supports country, interface-language, result-language, time, duplicate-filter, and spelling-correction filters.
- Uses Apify's
GOOGLE_SERPproxy group by default and accepts standard or custom proxy configuration. - Resolves Google's protected result redirects with bounded, redirect-only requests; it does not fetch destination pages.
- Deduplicates by canonical result URL and emits no null or empty top-level fields.
- Fails closed on challenges, consent pages, oversized responses, or unrecognized source markup.
- Treats Google's explicit no-results page as a successful, valid empty result.
Input
| Field | Type | Default | Notes |
|---|---|---|---|
query | string | required | 1–300 characters |
maxItems | integer | 10 | 1–100 |
gl | string | us | Two-letter country code |
hl | string | en | Two-letter interface language |
lr | string | omitted | Google language restriction such as lang_en |
timePeriod | string | omitted | last_hour, last_day, last_week, last_month, last_year, or custom |
timePeriodMin / timePeriodMax | string | omitted | MM/DD/YYYY, required together for custom |
nfpr | boolean | omitted | Disable automatic spelling correction when true |
filter | boolean | omitted | Google duplicate-result filter |
requestTimeoutSecs | integer | 45 | 5–120 |
maxRequestRetries | integer | 1 | 0–2 |
proxyConfiguration | object | Google SERP proxy | Apify or custom proxy settings |
Example:
{"query": "OpenAI API documentation","maxItems": 15,"gl": "us","hl": "en","proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["GOOGLE_SERP"]}}
Dataset
Each row is one source-backed organic result. Stable fields include recordId, recordType, position, title, url, domain, searchQuery, searchPage, localization fields, searchUrl, scrapedAt, fieldCoverage, and dataQuality. Optional source-backed fields such as displayedUrl, snippet, date, siteLinks, rating, and reviewCount are omitted when unavailable.
Run-level diagnostics are written to OUTPUT, including status, counts, pagination summaries, proxy mode, redirect-resolution count, failures, and elapsed time. Failed or ambiguous runs leave the dataset empty rather than publishing guessed records.
Local verification
npm cinpm run lintnpm testapify validate-schemaapify run --input-file test-apify-input.json --purge