Goodreads Review Scraper
Pricing
from $4.99 / 1,000 results
Goodreads Review Scraper
π Goodreads Review Scraper extracts book reviews at scale β ratings, review text, reviewer profiles, dates & shelves. β‘ Clean, structured data for sentiment analysis, market research & author insights. π Export CSV/JSON. π― Ideal for authors, publishers, marketers & data teams.
Pricing
from $4.99 / 1,000 results
Rating
0.0
(0)
Developer
API Empire
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Goodreads Review Scraper (Apify Actor)
Scrapes public book reviews from Goodreads using the same approach as the standalone scripts: load the book reviews page, extract work/book resource IDs, discover the GraphQL endpoint and apiKey from bundled JS, then call getReviews with pagination until maxItems per URL.
Features
- Bulk urls input (full Goodreads book URLs or numeric work IDs).
- Sort: popular (default), newest, oldest; optional language filter; ALL vs this edition reviews.
- Proxy strategy: starts with direct HTTP; on failure escalates to Apify datacenter proxy, then RESIDENTIAL (locked for the rest of the run). Retries up to 3Γ per step (discovery + GraphQL), with short backoff.
- Results pushed to the dataset as they are scraped (one row per review), matching the flattened review shape from the GraphQL API.
Input
| Field | Type | Description |
|---|---|---|
urls | array | Required. Book page URLs or numeric IDs. |
maxItems | integer | Max reviews per URL (default 100). |
sortBy | string | popular | newest | oldest. |
languageCode | string | e.g. en, or all for no filter. |
reviewEdition | string | ALL (work) or only_this_book. |
proxyConfiguration | object | Optional Apify Proxy UI config (escalation uses Apify proxy when needed). |
Example:
{"urls": ["https://www.goodreads.com/book/show/26032825"],"maxItems": 50,"sortBy": "oldest","languageCode": "en","reviewEdition": "only_this_book"}
Output
Dataset items include bookUrl, id, creator, text, rating, shelving, timestamps, likeCount, commentCount, etc., as returned by the review extractor.
Local run
cd Goodreads-Review-Scraperpip install -r requirements.txtapify run
Pass input in the Apify Console, or for local apify run add INPUT.json under the default key-value store yourself (it is not part of this repository).
Legal
Only publicly visible reviews are collected. You are responsible for complying with Goodreadsβ terms and applicable laws.