Maven Course Scraper — Cohort Courses, Prices & Instructors
Pricing
Pay per usage
Maven Course Scraper — Cohort Courses, Prices & Instructors
Extract cohort-based courses from Maven.com — title, instructor, cohort dates, price, student count, ratings, description, format, and tags. Scrapes public listing and detail pages via embedded JSON (no login required).
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Venkatesh Sekar
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
14 days ago
Last modified
Categories
Share
Maven Course Scraper
Extract cohort-based courses from Maven.com — title, instructor, cohort dates, price, student enrollment, ratings, description, format, and topic tags.
How it works
Maven is a Next.js SSR application. Every listing and detail page embeds a __NEXT_DATA__ JSON blob that contains the full course data — no JavaScript rendering required.
Phase 1 — Listing: The actor fetches the provided start URLs (e.g. https://maven.com/courses?sort=trending). Each listing page returns up to 99 courses server-side. The actor expands a plain /courses URL into all three sort variants (trending, new, best-selling) to maximise coverage. Course slugs are deduplicated across all listing pages.
Phase 2 — Detail: Each unique course detail page (/school-slug/course-slug) is fetched concurrently. Detail pages contain richer data: full pricing, cohort schedules, ratings, and instructor social links.
Input
| Field | Type | Default | Description |
|---|---|---|---|
startUrls | stringList | — | Listing or category URLs (required) |
maxCourses | integer | 50 | Max detail pages to fetch (0 = unlimited) |
maxConcurrency | integer | 3 | Parallel detail fetches |
proxyConfiguration | proxy | Apify default | Proxy for outbound requests |
Accepted start URL formats:
https://maven.com/courses— expands to all 3 sort variantshttps://maven.com/courses?sort=trendinghttps://maven.com/courses?sort=newhttps://maven.com/courses?sort=best-sellinghttps://maven.com/courses/ai— category leaderboard (top 9)https://maven.com/courses/product
Output schema (per course)
{"url": "https://maven.com/shreyas-doshi/product-sense","course_id": 9991,"course_slug": "product-sense","school_slug": "shreyas-doshi","school_name": "Shreyas Doshi","school_verified": true,"title": "World-class Product Sense in Practice","description": "...","format": "full_course","price_usd": 3000.0,"currency": "USD","num_ratings": 0,"avg_rating": null,"enrolled_last_week": "28","social_image_url": "https://...","tags": ["Product", "Strategy", "For Product Managers"],"instructors": [{"name": "Shreyas Doshi","headline": "Former PM leader at Stripe, Twitter, Yahoo","linkedin_url": null,"twitter_handle": "","custom_social_link": null,"image_url": "https://...","previous_employers": ["Stripe", "Twitter"]}],"next_cohorts": [{"cohort_id": 24597,"name": "May 2026","start_date": "2026-05-02T16:00:00Z","end_date": "2026-05-09T23:00:00Z","max_size": null}],"next_cohort_start": "2026-05-02T16:00:00Z","next_cohort_end": "2026-05-09T23:00:00Z"}
Courses that fail to scrape are still pushed with an "error" field so the overall run always produces a complete dataset.
Notes
- Maven returns up to 99 courses per listing page server-side. The "Show more courses" button on the UI loads additional courses via JavaScript — the scraper does not execute JS, so it picks up the first page of each sort variant (~99 × 3 = ~297 unique courses before dedup).
- Category pages (e.g.
/courses/ai) only return the top 9 leaderboard courses server-side. avg_ratingis derived fromsum_ratings / num_ratings / 10to convert Maven's internal 100-point scale to a 10-point scale. Many courses havenum_ratings = 0if they use an external review platform (e.g. testimonial.to).- No authentication is required. All data is publicly accessible.
