CNN Search Scraper
Pricing
from $2.10 / 1,000 results
CNN Search Scraper
Runs keyword searches against CNN.com's own search index and returns matching articles, videos and photo galleries -- headline, URL, thumbnail, modified date and teaser, with optional full article body, author, section and publish date fetched from each result's page.
Pricing
from $2.10 / 1,000 results
Rating
0.0
(0)
Developer
Ibnu Adzim
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Runs keyword searches against CNN.com's own search index and returns the matching articles, videos and photo galleries.
| Covers | www.cnn.com only — see Limits |
| Content types | articles, videos, photo galleries |
| Returns | headline, URL, thumbnail, modified date, teaser; optionally full article body, author, section and publish date |
| Method | HTTP only, one unauthenticated JSON endpoint. No browser, no login, no API key |
Example input
{"queries": ["climate change", "artificial intelligence"],"contentTypes": ["article", "video"],"sort": "relevance","maxItemsPerQuery": 50,"includeFullBody": true}
Output
Every row carries _input, _source, _scrapedAt, recordType. Three record
types share the dataset: SEARCH_RESULT (one per hit), SEARCH_SUMMARY (one per
query + content type, with CNN's own reported total and the filters actually
applied) and ERROR. Every input maps to at least one row.
Limits — read these, they are not obvious
- Flagship only. CNN's search index covers
www.cnn.com. It does not include CNN en Español, Arabic, Brasil, Indonesia or any licensee edition — verified by searchingmexicoandbrasiland finding onlywww.cnn.comhosts in every result. Use the CNN Articles Scraper for the other editions. - 1,000-result hard ceiling. CNN answers any offset at or beyond 1000 with an
HTTP 403. A query can therefore never yield more than 1,000 rows regardless of
the total it reports. Runs that reach it say so via
_warningon the summary row rather than looking quietly truncated. searchTeaseris not the article body. The search API's own text field is a one-sentence teaser (measured 103–230 characters against real bodies of 2,000–7,000). It is emitted under its own name so it cannot be mistaken for full text; setincludeFullBodyfor the real thing.- The index is small. Measured totals:
trump23,2026233,russia109,news15. Common stopwords (the,people) return zero. - Only three content types and two sort orders are real. See below.
Two silent-fallback traps this actor guards against
CNN's API does not reject an unknown types or sort value — it ignores it
and returns something plausible:
- an unrecognised
typesreturns the unfiltered result set (measuredof=157for every invalid value, versus 14 / 132 / 407 forarticle/video/gallery) - an unrecognised
sortsilently behaves asnewest
Both are therefore rejected in code, not just in the Console enum — an API or CLI
run never sees a Console enum. Passing contentTypes: ["live-story"] returns a
named invalid_input error instead of a full unfiltered dump that looks like a
successful narrow search.