Goodreads Scraper
Extract book ratings, reviews, author info, and reading list data from Goodreads. Powered by spider-browser .
Extract data in minutes
import { SpiderBrowser } from "spider-browser";
const spider = new SpiderBrowser({
apiKey: process.env.SPIDER_API_KEY!,
});
await spider.connect();
const page = spider.page!;
await page.goto("https://www.goodreads.com/list/show/1.Best_Books_Ever");
await page.content();
const data = await page.evaluate(`(() => {
const books = [];
document.querySelectorAll("tr[itemtype='http://schema.org/Book']").forEach(el => {
const title = el.querySelector(".bookTitle span")?.textContent?.trim();
const author = el.querySelector(".authorName span")?.textContent?.trim();
const rating = el.querySelector(".minirating")?.textContent?.trim();
if (title) books.push({ title, author, rating });
});
return JSON.stringify({ total: books.length, books: books.slice(0, 20) });
})()`);
console.log(JSON.parse(data));
await spider.close(); Data you can extract
Rich data extraction
Extract titles, view counts, and engagement metrics from goodreads.com.
Dynamic content
Handle lazy-loaded comments, recommendations, and infinite scroll.
Channel-level scraping
Process entire channels and playlists with automatic pagination.
More Media scrapers
Extract video metadata, channel statistics, view counts, comments, playlist data, and trending content from YouTube. Full rendering for dynamic content and infinite scroll.
Extract live stream data, channel info, viewer counts, and game categories from Twitch.
Extract playlist data, track listings, artist info, and album metadata from Spotify.
Start scraping goodreads.com
Get your API key and start extracting data in minutes.