Skip to content
SpideyData

Google News · tasks

Google News Scraper API

Retire the news scraper script.

Google: live · not GA

If you maintain a BeautifulSoup script for Google News, this page is about replacing it: queue many News queries as tasks, poll for news[] results and leave parser upkeep on our side.

Create a news task, then poll
POST /v1/serp/google/news/tasks
{"q": "battery recycling", "hl": "en"}
→ 202 {"job":{"id":"<task_id>","kind":"google_news","status":"queued",
       "request":{"q":"battery recycling","country":"US","hl":"en","device":"desktop"},
       "attempt_count":0,"max_attempts":3}}
GET /v1/serp/tasks/<task_id>
→ 200 {"job":{"id":"<task_id>","status":"completed","result":{…news[]…},"error":null}}

DIY script vs managed

Markup changes

Your own scraper script: Selectors break and you find out from empty output

Managed API: Parser fixes happen server-side

Blocks and sessions

Your own scraper script: You manage proxies and retries

Managed API: Handled server-side; you see 502 or 503 and are not billed

Output

Your own scraper script: Whatever your script extracts

Managed API: A fixed news[] schema

Your time

Your own scraper script: Ongoing upkeep

Managed API: Integration once

Bulk news via tasks

  1. POST /v1/serp/google/news/tasks per query; the response is 202 with a job of kind google_news and status queued.
  2. Store job.id.
  3. GET /v1/serp/tasks/{task_id} until status is completed or failed.
  4. On completed, read job.result, which holds the news[] response.

Launch status for this page

Check engine availability before choosing an endpoint. Google also supports News, Images and asynchronous tasks.

  • GoogleLiveGoogle is callable today with a Bearer API key.

SERP searches are charged per successful search at a display rate of 2 Credits per search; failed searches are not charged. Polling task status is free. The current rate is on Pricing.

What this is not

  • No anti-bot bypass guidance.
  • No article full text.
  • No webhook; poll only.

Frequently asked questions

How many retries does a task get?

max_attempts defaults to 3; attempt_count records attempts so far.

Is polling billed?

No.

Webhook when done?

No. Polling only.

What kind is a news task?

google_news.

Stop patching selectors

Get an API key and move your news queries to tasks.