Buzzsprout Podcast Show & Episode Scraper avatar

Buzzsprout Podcast Show & Episode Scraper

Pricing

$3.00 / 1,000 results

Go to Apify Store
Buzzsprout Podcast Show & Episode Scraper

Buzzsprout Podcast Show & Episode Scraper

Extracts show and episode data from public Buzzsprout podcast pages, priced pay-per-result.

Pricing

$3.00 / 1,000 results

Rating

0.0

(0)

Developer

Adam Schepis

Adam Schepis

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

Extracts show and episode data from public Buzzsprout podcast pages, priced pay-per-result.

What you get

  • Show metadata — title, URL, host/author, description, category, artwork — plus a list of recent episodes, for any public Buzzsprout show page.
  • Structured, ready-to-use data — no scraper to build or maintain yourself.
  • Pay only for results: $0.004 per show record, nothing for failed or empty runs.
  • Runs on Apify's infrastructure with automatic proxy rotation and retries.

Input

FieldTypeRequiredDescription
startUrlsarray of URLsyesPublic Buzzsprout show pages, e.g. https://<show>.buzzsprout.com or https://www.buzzsprout.com/<id>.
maxResultsintegerno (default 20)Stops the run (and pay-per-event charging) once this many show records have been produced.
maxEpisodesPerShowintegerno (default 20)Caps how many of each show's most recent episodes are included in its episode list.

Example input:

{
"startUrls": [
{ "url": "https://www.buzzsprout.com/100" },
{ "url": "https://buzzcast.buzzsprout.com" }
],
"maxResults": 20,
"maxEpisodesPerShow": 20
}

Output example

One dataset item per show, with its episodes nested inside:

{
"showTitle": "Johnson Street Church of Christ Sermon Podcast",
"showUrl": "https://www.buzzsprout.com/100",
"host": "Johnson Street Church",
"showDescription": "This podcast includes the Sunday morning sermons from the Johnson Street Church of Christ in San Angelo, Texas...",
"category": "Religion & Spirituality",
"artworkUrl": "https://storage.buzzsprout.com/o01nluf9t5d6694qqhuuqhutm056?.jpg",
"episodes": [
{
"title": "Follow // Lesson 1",
"publishDate": "2026-09-06T16:00:00.000Z",
"duration": "28:09",
"descriptionExcerpt": "Sermon Series // Follow Lesson 1 // The Law of God - Psalm 119 Sunday, September 6, 2026",
"episodeUrl": "https://www.buzzsprout.com/100/episodes/19761949",
"audioUrl": "https://www.buzzsprout.com/100/episodes/19761949-follow-lesson-1.mp3"
}
],
"scrapedAt": "2026-09-08T23:23:03.262Z"
}

This is a real, verified sample (truncated to one episode for brevity) — see "Seed results" below for the full local run.

Every dataset item has the same shape. Download results as JSON, CSV, Excel, or via the Apify API.

Pricing

This Actor uses pay-per-event pricing. You are charged only for the result event, once per show record produced (episodes are nested inside that one record, not charged separately); the exact per-event price is set in Apify Console at publish time and shown on the Actor's Store page before you run it.

EventWhen it's charged
resultOnce per show record, up to maxResults

Why this actor

Buzzsprout hosts show pages for a huge number of independent podcasts, but doesn't offer a public search API for buyers who want structured show/episode data (for directory building, competitive research, guest-booking research, etc.) without visiting each show page by hand. This actor turns any public Buzzsprout show URL into structured JSON in one call.

How it works

  • Fetches the given show page and reads the RSS feed link it points to (the same feed a podcast app would use) to get the show's category, host/author, and episode list — all fields the site publicly exposes to an anonymous visitor via that link.
  • If robots.txt disallows a show's RSS path, falls back to parsing the show page's own visible "Latest Episodes" list instead (category and audio URL are not available in that fallback, since they aren't shown on the page itself).
  • No login, no pagination beyond maxEpisodesPerShow, maxConcurrency capped at 3.

Robots.txt

https://www.buzzsprout.com/robots.txt currently disallows exactly one path: /101612.rss. This actor fetches and parses that file at the start of every run and will not fetch a show's RSS feed if its path is disallowed — it uses the HTML-page fallback described above instead. No other paths are blocked at the time of writing.

Notes for buyers

  • Category, artwork, and audio URLs come from what the show's RSS feed publishes; a show that hides its RSS link from its page (rare) falls back to page-only data with category and episode audioUrl as null.
  • descriptionExcerpt is truncated to 300 characters.
  • Legacy Buzzsprout shows (some over a decade old) can have episodes with non-standard identifiers; this actor derives episode URLs from the audio file path rather than relying on that identifier, so results are stable even for very old catalogs.

Reference docs used to build this actor