Books Scraper (Google Books + Open Library)
Search Google Books and Open Library and export clean book data: title, authors, ISBN-13, ratings, covers, and prices. No API key, no login.
How it works
- 1Open it on Apify
Hit Run on Apify — it opens the tool in the cloud, no install.
- 2Set the inputs
Adjust
source,query,googleApiKey(sensible defaults are pre-filled). - 3Click Run
The tool runs on Apify’s cloud and collects the data for you.
- 4Export the results
Download as JSON, CSV or Excel, or pipe straight into your app, Google Sheets, or an AI agent.
Pricing
$0.001 per book = $1 per 1,000
| You are charged for | When | Price |
|---|---|---|
| Book returned | Charged per book returned. | $0.001 |
Pay-per-event pricing: you are billed per result, not per subscription — a run that returns nothing costs nothing beyond the start fee. Billing is handled by Apify on your own account. These are the live Apify store prices, in effect since 2026-06-12, and they are what you are actually charged.
Inputs
| Field | What it does | Type |
|---|---|---|
source | Which book catalog to search. Open Library is the reliable keyless source. Google Books returns descriptions and prices but its keyless mode shares one global Google project whose daily quota is usually exhausted (HTTP 429) - supply your own free API key below, or the actor falls back to Open Library automatically. Output is normalized identically for both. | string |
query | Keywords to search for, e.g. "clean code", "the hobbit", or "isbn:9780132350884". Required. | string |
googleApiKey | Optional. Only used when Source = Google Books. Keyless Google Books calls are metered against one shared anonymous Google project used by the whole internet, and its daily quota is usually already spent (HTTP 429 from every IP - a proxy does not help). A free key from console.cloud.google.com (enable the Books API, create an API key) puts the requests on your own quota. Leave empty to use Open Library instead. | string |
maxItems | Maximum number of unique books to return. Results are paginated automatically and deduplicated by ISBN (or title + author). | integer |
notionConnector | Optional. Write each result as a page into your Notion when the run finishes. Authorize a Notion connector once in Settings → API & Integrations → MCP connectors, then pick it here. Leave empty to skip (default) — results are always saved to the dataset regardless. | string |
notionParentId | Optional. The Notion data source ID of the database to write into (only used if a Notion connector is set). Leave empty to create the pages privately in your workspace instead. | string |
What you get
A structured dataset — each result includes fields like:
authorsaverageRatingcategoriescoverImagedescriptiondetailsisbnlanguagepageCountpricepublishedDatepublisherqueryratingsCounttitleurlExport every run as JSON, CSV or Excel, or send it to your app, a database, Google Sheets, or an AI agent.
4 ready-to-run use cases
Open Library Sci-Fi Books Scraper: ISBN, Author, Year
Science fiction book metadata from Open Library: titles, authors, first publish year, language, and ISBNs for building a genre reading list.
Google Books Scraper: Machine Learning Titles + Prices
Comparing machine learning books to buy? Get Google Books titles, list price, and rating side by side so you can spot the editions worth your money.
Find Books on Open Library by Subject
Search Open Library for books by subject, author or title — get ISBNs, authors, publish years and cover images as structured JSON. Free and keyless.
Search Book Metadata by Title or Author
Look up book metadata from Google Books — title, authors, ISBN, publisher, publish date, description and cover image. Structured JSON, no API key.
Related tools in Media & Entertainment Data
Other ready-to-run tools in the same category — all pay-per-use on the Apify cloud.
TVMaze TV Show Scraper
Scrape TV data from TVMaze: search shows and people, get ratings, genres, network, IMDb IDs, images and full episode lists.
MusicBrainz Scraper
Scrape MusicBrainz artists, releases, recordings, release-groups and labels. Structured rows with MBIDs, dates and tags from $0.20 per 1,000. No API key.
IMDb Search Scraper
Search IMDb for movies, shows, and people. Get the IMDb id, year, top cast, poster, and URL back as clean rows. Batch a whole watchlist at once.
Steam Games Scraper
Scrape Steam games with no API key. Search by name, get store details, price, genres, Metacritic and SteamSpy stats, or pull recent player reviews as JSON.
Where this tool sits
- Categories
- Media & Entertainment Data
Books Scraper (Google Books + Open Library)
Search books across two free, public catalogs — Google Books and Open Library — and get clean, normalized records. No login, no anti-bot. Open Library needs no key at all; Google Books works best with your own free API key (see below).
> Google Books quota. Keyless Google Books calls are metered against one *shared* Google > project (project_number 624717413613) used by every anonymous caller worldwide, and its > daily quota is usually already spent — so it answers 429 from every IP, and a proxy does > not help. Supply your own free key in googleApiKey to use your own quota, or leave the > source on Open Library. If Google Books is selected without a key and hits that quota, the > actor falls back to Open Library automatically and records why in an uncharged row.
What it does
Pick a source, give it a query, and the actor paginates through the API, deduplicates the results, and returns a normalized record per book. The output schema is identical for both sources, so you can switch sources without changing your downstream code.
Input
| Field | Type | Default | Notes |
|---|---|---|---|
source | string | googlebooks | googlebooks or openlibrary |
query | string | — | Required. e.g. clean code, the hobbit, isbn:9780132350884 |
maxItems | integer | 100 | Max unique books to return (1–1000) |
proxyConfiguration | object | off | Optional. Public no-auth APIs with no anti-bot — proxy is not needed and is off by default. Only enable it if you hit IP rate limits. |
Output (normalized for both sources)
{
"ok": true,
"source": "googlebooks",
"sourceId": "...",
"title": "Clean Code",
"subtitle": "A Handbook of Agile Software Craftsmanship",
"authors": ["Robert C. Martin"],
"publisher": "Pearson Education",
"publishedDate": "2009",
"year": 2009,
"isbn": "9780136083252",
"pageCount": 464,
"categories": ["Computers"],
"averageRating": 4.5,
"ratingsCount": 12,
"language": "en",
"description": "…",
"coverImage": "https://…",
"url": "https://…",
"price": { "amount": 29.99, "currency": "USD", "buyLink": "https://…" }
}
descriptionis populated for Google Books; Open Library search results do not include it (null).priceis Google Books only; it isnullfor Open Library and for Google Books volumes that are not for sale.isbnprefers ISBN-13 when available, otherwise falls back to ISBN-10 / the first identifier.- Any field can be
nullwhen the source doesn't provide it. In practicesubtitle,publisher,isbn,pageCount,averageRating,ratingsCount,language, andcoverImageare commonly missing on some records.titleis always present (records without a title are skipped).
Pricing
$1.00 per 1,000 books ($0.001 each), with no run-start fee. Flat rate — no volume tiers, no plan gates — and you are charged only for books actually returned.
Charged per book returned (ok: true rows only). Diagnostic rows (ok: false — e.g. NO_RESULTS, BAD_INPUT, NETWORK, RATE_LIMITED) are never charged. An empty result set or invalid input produces an uncharged diagnostic row, not a charge.
*From 24 August 2026 a $0.005 run-start fee applies in addition to the per-book price; the $0.001 per book is unchanged.*
Troubleshooting
- Empty dataset /
NO_RESULTS— the query matched no books for the chosen source. Try a broader query or switchsource. You are not charged. RATE_LIMITED— the public API throttled the run. The actor backs off and retries automatically; re-run later, or enable the optional proxy if it persists.BAD_INPUT—querywas empty orsourcewas invalid; a diagnostic row explains what to fix (you are not charged).
Sources
- Google Books API —
https://www.googleapis.com/books/v1/volumes - Open Library Search API —
https://openlibrary.org/search.json