Request a tool
All toolsMCP serverRequest a toolPlatformsCategories
Books Scraper (Google Books + Open Library) icon

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.

Run this in the cloudRun on Apify →

Media & Entertainment Data

How it works

  1. 1
    Open it on Apify

    Hit Run on Apify — it opens the tool in the cloud, no install.

  2. 2
    Set the inputs

    Adjust source, query, maxItems (sensible defaults are pre-filled).

  3. 3
    Click Run

    The tool runs on Apify’s cloud and collects the data for you.

  4. 4
    Export the results

    Download as JSON, CSV or Excel, or pipe straight into your app, Google Sheets, or an AI agent.

Inputs

FieldWhat it doesType
sourceWhich book catalog to search. Google Books returns descriptions and prices; Open Library is purely bibliographic. Output is normalized identically for both.string
queryKeywords to search for, e.g. "clean code", "the hobbit", or "isbn:9780132350884". Required.string
maxItemsMaximum number of unique books to return. Results are paginated automatically and deduplicated by ISBN (or title + author).integer
notionConnectorOptional. 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
notionParentIdOptional. 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:

authorsaverageRatingcategoriescoverImagedescriptiondetailsisbnlanguagepageCountpricepublishedDatepublisherqueryratingsCount

Export every run as JSON, CSV or Excel, or send it to your app, a database, Google Sheets, or an AI agent.

2 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.

Books Scraper (Google Books + Open Library)

Search books across two free, public catalogs — Google Books and Open Library — and get clean, normalized records. No API key, no login, no anti-bot.

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

FieldTypeDefaultNotes
sourcestringgooglebooksgooglebooks or openlibrary
querystringRequired. e.g. clean code, the hobbit, isbn:9780132350884
maxItemsinteger100Max unique books to return (1–1000)
proxyConfigurationobjectoffOptional. 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://…" }
}
  • description is populated for Google Books; Open Library search results do not include it (null).
  • price is Google Books only; it is null for Open Library and for Google Books volumes that are not for sale.
  • isbn prefers ISBN-13 when available, otherwise falls back to ISBN-10 / the first identifier.
  • Any field can be null when the source doesn't provide it. In practice subtitle, publisher, isbn, pageCount, averageRating, ratingsCount, language, and coverImage are commonly missing on some records. title is always present (records without a title are skipped).

Billing

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.

Troubleshooting

  • Empty dataset / NO_RESULTS — the query matched no books for the chosen source. Try a broader query or switch source. 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_INPUTquery was empty or source was 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