Get detailed historical price, volume data, company profiles, dividends, splits and events from Yahoo Finance for multiple stocks and custom date ranges.
Company Profile Extraction: Added capability to extract company sector, industry, and detailed business summary.
Corporate Events Extraction: Added support for extracting "Upcoming Events" (Earnings, Dividend dates) and "Recent Events" (SEC filings, 8-K, 10-Q).
Date Range Enhancements: Standardized dateRange inputs to single characters (d, w, m, y) and added support for max to fetch all available historical data.
Offline Validation: Added native Node.js testing (tests/test.js) to validate input consistency and dataset schema without making network requests.
Project Architecture Documentation: Created ARCHITECTURE.md to document Clean Architecture patterns, conventions, and Playwright guidelines.
Changed
Massive Performance Boost: Implemented a strict network request whitelist (yahoo.com, yimg.com) to block all third-party ad networks and trackers. This reduced scraping time by up to 10x and eliminated CPU/Memory overloads.
Memory Optimization: Configured .env file to remove the default 4GB memory limit, allowing Crawlee to utilize available system RAM for better concurrency.
Documentation: Updated README.md to function strictly as an Apify Storefront page, removing local usage instructions.
[0.7.2] - 2026-06-20
Added
Unified Per-Symbol Output: Added a new output format that groups historical data, dividends, and splits by symbol into a single hierarchical JSON object.
Output Aggregator Service: Implemented OutputAggregator to handle data transformation cleanly without affecting the default dataset.
Input Configuration: Added generateUnifiedOutput toggle to input_schema.json (enabled by default) to allow users to opt-out of the new output format.
Output Schema: Updated output_schema.json to include the new UNIFIED_OUTPUT.json reference.
Changed
Updated README.md to document the new UNIFIED_OUTPUT format and input parameters.