DEV Community

Алексей Спинов
Алексей Спинов

Posted on

How to Scrape Google Search Results (SERPs) Without Getting Blocked

Google SERP scraping is one of the hardest targets. Here is what works.

Why Google Is Hard to Scrape

  • CAPTCHAs after a few requests
  • IP blocking
  • Sophisticated bot detection
  • Constantly changing HTML structure

Official Alternative: Custom Search API

Google provides a free search API (100 queries/day free):

async function googleSearch(query) {
  const key = "YOUR_API_KEY";
  const cx = "YOUR_CX";
  const url = `https://www.googleapis.com/customsearch/v1?key=${key}&cx=${cx}&q=${encodeURIComponent(query)}`;
  const res = await fetch(url);
  const data = await res.json();
  return data.items.map(item => ({
    title: item.title,
    link: item.link,
    snippet: item.snippet
  }));
}
Enter fullscreen mode Exit fullscreen mode

Third-Party SERP APIs

Service Free Tier Price
SerpAPI 100 searches/mo $50/mo
ValueSERPAPI 25 searches/day Free
ScrapingBee 1000 credits Free

Alternative: Bing Search API

Bing is easier to scrape and has a generous free API tier.

My Approach

Instead of scraping Google SERPs, I use Google News RSS (free, no limits) + other APIs for research data.

Resources


Need SERP or SEO data? $20-50. Email: Spinov001@gmail.com | Hire me

Top comments (0)