Maven Course Scraper — Cohort Courses, Prices & Instructors avatar

Maven Course Scraper — Cohort Courses, Prices & Instructors

Pricing

from $0.00005 / actor start

Go to Apify Store
Maven Course Scraper — Cohort Courses, Prices & Instructors

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

from $0.00005 / actor start

Rating

0.0

(0)

Developer

Venkatesh Sekar

Venkatesh Sekar

Maintained by Community

Actor stats

0

Bookmarked

4

Total users

2

Monthly active users

2 months 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

FieldTypeDefaultDescription
startUrlsstringListListing or category URLs (required)
maxCoursesinteger50Max detail pages to fetch (0 = unlimited)
maxConcurrencyinteger3Parallel detail fetches
proxyConfigurationproxyApify defaultProxy for outbound requests

Accepted start URL formats:

  • https://maven.com/courses — expands to all 3 sort variants
  • https://maven.com/courses?sort=trending
  • https://maven.com/courses?sort=new
  • https://maven.com/courses?sort=best-selling
  • https://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_rating is derived from sum_ratings / num_ratings / 10 to convert Maven's internal 100-point scale to a 10-point scale. Many courses have num_ratings = 0 if they use an external review platform (e.g. testimonial.to).
  • No authentication is required. All data is publicly accessible.