Books Scraper (Google Books + Open Library) avatar

Books Scraper (Google Books + Open Library)

Pricing

$1.00 / 1,000 book returneds

Go to Apify Store
Books Scraper (Google Books + Open Library)

Books Scraper (Google Books + Open Library)

Searches Google Books and Open Library (no API key) and returns normalized book records: title, authors, publisher, year, ISBN-13, page count, categories, rating, language, cover image, URL, and price (Google Books). Best for building reading lists a

Pricing

$1.00 / 1,000 book returneds

Rating

0.0

(0)

Developer

Dami's Studio

Dami's Studio

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

29 minutes ago

Last modified

Share

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