All notable changes to the Indeed Jobs Scraper are documented here.
- Initial production release of the Indeed Jobs Scraper.
PlaywrightCrawler-based architecture with stealth browser settings.
- Modular project structure:
src/main.js — entry point with input validation, proxy setup, and crawler init.
src/routes.js — Crawlee router factory.
src/routes/handlers.js — search results and job detail page handlers.
src/extractors/index.js — job data extraction from Indeed's JSON-LD and SSR.
src/filters/index.js — job ID deduplication.
src/schema/input.js — input validation (keyword, location, datePosted, jobType, maxJobs).
src/utils/index.js — URL builder for Indeed search params.
src/errors/ — ScraperError, ErrorTypes, ErrorHandler.
src/constants.js — base URLs and configuration constants.
- Keyword + location search with date, job type, experience level, and salary filters.
- Full job description scraping with detail-page visits.
- Indeed.com country selection support (US, UK, CA, AU, IN, DE, FR, etc.).
.actor/actor.json, input_schema.json, dataset_schema.json for Apify platform compatibility.
validate-datasets.js for local dataset output validation.
Dockerfile based on apify/actor-node-playwright-chrome.
README.md with full Apify usage guide.