TVmaze TV Schedule Scraper avatar

TVmaze TV Schedule Scraper

Pricing

from $11.00 / 1,000 result items

Go to Apify Store
TVmaze TV Schedule Scraper

TVmaze TV Schedule Scraper

Export daily TV schedules and people records from the TVmaze database. Pick a country and date to pull airing episodes with show, network, runtime, summary, and cast. Search people by name to get bios, birthdays, and image URLs.

Pricing

from $11.00 / 1,000 result items

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

ParseForge Banner

📺 TVmaze TV Schedule Scraper

🚀 Export daily TV schedules, show catalogs, and people records in seconds. Pull airing episodes, full show metadata, and cast across 55+ countries. No API key, no registration, no login walls.

🕒 Last updated: 2026-05-22 · 📊 40+ fields per record · 🌍 55 countries · 📺 5 data modes · 🎬 every airing episode

The TVmaze TV Schedule Scraper exports the community-maintained global TV catalog and returns up to 40+ structured fields per record, including episode metadata, full show details, network, premiere and finale dates, ratings, IMDb cross-references, and cast bios. The underlying dataset is one of the most widely cited open television references and has been maintained since 2008.

Coverage spans daily TV schedules across 55+ countries, the complete show catalog with seasons and episodes, single-show drill-downs by ID, and a global people search for actors, hosts, and crew. Records are returned as CSV, Excel, JSON, or XML in under a minute. All filters run on the source side, so you skip the parser engineering entirely.

🎯 Target Audience💡 Primary Use Cases
EPG and streaming dashboards, TV app developers, recommendation engines, content licensing teams, entertainment journalists, fan sitesDaily airing grids, "what's on tonight" widgets, show metadata enrichment, cast lookups, recommendation engine training, IMDb cross-referencing

📋 What the TVmaze Scraper does

Five data modes in a single Actor:

  • 📅 Daily Schedule. Every episode airing on a given date in a chosen country.
  • 🔍 Show Search. Keyword search across the global show catalog.
  • 🎬 Show Details. Full show metadata, episodes, seasons by numeric show ID.
  • 📚 Show Catalog Page. Page through the full show index (250 shows per page).
  • 🧑 People Search. Look up actors, hosts, and crew by name with bios and image URLs.

Each record carries cross-mode keys (showId, personId, episodeId) plus external IDs (imdb, thetvdb, tvrage) so you can JOIN against any other entertainment dataset.

💡 Why it matters: TV schedule and show metadata powers EPG grids, streaming app guides, recommendation systems, and editorial coverage. Building your own pipeline means scraping multiple network sites, normalizing timezones, and rebuilding when each broadcaster changes layout. This Actor skips all of that.


🎬 Full Demo

🚧 Coming soon: a 3-minute walkthrough showing how to go from sign-up to a downloaded TV dataset.


⚙️ Input

InputTypeDefaultBehavior
maxItemsinteger10Records to return. Free plan caps at 10, paid plan at 1,000,000.
modestring"schedule"One of 5 modes: schedule, shows, showDetail, showsIndex, people.
countrystring"US"ISO 3166-1 alpha-2 country code for the daily schedule. 55 countries supported.
datestringtodayYYYY-MM-DD. Used with schedule mode only.
showQuerystringnullSearch term for show search mode (e.g. "breaking bad").
showIdintegernullNumeric show ID for showDetail mode (169 = Breaking Bad).
showsPageinteger0Page index for showsIndex mode (250 shows per page).
peopleQuerystringnullSearch term for people search mode.

Example: tonight's UK TV schedule.

{
"maxItems": 100,
"mode": "schedule",
"country": "GB"
}

Example: full show metadata for Breaking Bad.

{
"mode": "showDetail",
"showId": 169
}

⚠️ Good to Know: schedule records can carry timezones distinct from your local clock. Use the airstamp field (UTC) when you need a normalized timestamp; airtime and airdate reflect the broadcaster's local schedule. People records may have birthday or deathday set to null when the source has no public data.


📊 Output

Each record is tagged with a recordType and carries the relevant subset of 40+ fields. Download the dataset as CSV, Excel, JSON, or XML.

🧾 Schema

FieldTypeExample
🖼️ imageUrlstring | null"https://static.tvmaze.com/uploads/.../jpg"
🏷️ recordTypestring"episode"
🎞️ episodeIdnumber3621165
🏷️ episodeNamestring"Episode 98"
🎯 episodeTypestring"regular"
🔢 season, numbernumber2026, 98
📆 airdate, airtime, airstampstring"2026-05-20", "00:00", "2026-05-21T04:00:00+00:00"
⏱️ runtimenumber | null120
episodeRatingnumber | null8.4
🔗 episodeUrlstring | null"https://www.tvmaze.com/episodes/.../episode-98"
📝 summarystring | nullHTML snippet
🎬 showId, showName, showTypenumber, string82, "Game of Thrones", "Scripted"
🌐 languagestring | null"English"
🏷️ genresarray["Drama", "Action"]
📡 showStatusstring"Running"
⏱️ showRuntime, showAverageRuntimenumber60, 56
showRating, showWeightnumber9.3, 100
📆 premiered, endeddate | null"2011-04-17", "2019-05-19"
🕒 scheduleTimestring"21:00"
📅 scheduleDaysarray["Sunday"]
📺 networkName, networkCountry, networkTimezonestring"HBO", "US", "America/New_York"
🎫 imdb, thetvdb, tvragestring, number"tt0944947", 121361, 24493
🔗 officialSite, showUrlstring | null"https://hbo.com/..."
🧑 personId, personNamenumber, string27, "Hugh Laurie"
🌍 country, birthday, deathday, genderstring | null"GB", "1959-06-11", null, "Male"
🔗 personUrlstring | null"https://www.tvmaze.com/people/.../hugh-laurie"
🕒 scrapedAtISO 8601"2026-05-22T00:00:00.000Z"

📦 Sample records


✨ Why choose this Actor

Capability
📺5 data modes. Schedule, show search, show detail, show catalog index, people search.
🌍55 country schedules. Daily airing grids for every major broadcast market.
🔑Cross-system IDs. IMDb, TheTVDB, and TVRage codes ready for JOINs.
Fast. 10 records in under 5 seconds, 1,000 episodes in under a minute.
🎬Cast and crew. People search returns bios, country, and image URLs.
🚫No authentication. Works with the public TV catalog. No login, no API key.
🔁Always fresh. Every run fetches the latest schedule data, so the dataset reflects today's grid.

📊 Accurate TV schedule data is the foundation of every electronic program guide, streaming app, recommendation engine, and editorial coverage site in modern entertainment.


📈 How it compares to alternatives

ApproachCostCoverageRefreshFiltersSetup
⭐ TVmaze Schedule Scraper (this Actor)$5 free credit, then pay-per-use55 countries, all genresLive per runcountry, date, search, ID, mode⚡ 2 min
Gracenote / Nielsen EPG feeds$$$$ enterpriseGlobalStreamingMany⏳ Weeks
IMDb scrapingFreeShow metadata onlyManualNone🐢 Days
Per-network scrapingFreeSingle networkManualNone🕒 Variable

Pick this Actor when you want broad multi-country schedule coverage, server-side filtering, and zero parser maintenance.


🚀 How to use

  1. 📝 Sign up. Create a free account with $5 credit (takes 2 minutes).
  2. 🌐 Open the Actor. Go to the TVmaze TV Schedule Scraper page on the Apify Store.
  3. 🎯 Set input. Pick a mode (start with schedule), choose a country and date, and set maxItems.
  4. 🚀 Run it. Click Start and let the Actor collect your data.
  5. 📥 Download. Grab your results in the Dataset tab as CSV, Excel, JSON, or XML.

⏱️ Total time from signup to downloaded dataset: 3-5 minutes. No coding required.


💼 Business use cases

📺 EPG & Streaming Apps

  • "What's on tonight" grids for streaming UIs
  • Localized program guides for set-top boxes
  • Calendar reminders for upcoming premieres
  • Country-specific airing schedules for travel apps

🎬 Content Licensing & Distribution

  • Catalog enrichment with cross-system IDs
  • Network and country availability mapping
  • Title metadata for licensing deals
  • Cast and crew lookups for clearance

🤖 Recommendation Engines

  • Genre, runtime, and rating features for ranking
  • People co-occurrence graphs from cast
  • Show similarity from network and language
  • Daily fresh training data for recall

📰 Entertainment Editorial & Fansites

  • Daily "what aired today" recap pages
  • Show-page SEO with structured metadata
  • Cast and bio pages with images
  • IMDb cross-link enrichment for SEO

🔌 Automating TVmaze Schedule Scraper

Control the scraper programmatically for scheduled runs and pipeline integrations:

  • 🟢 Node.js. Install the apify-client NPM package.
  • 🐍 Python. Use the apify-client PyPI package.
  • 📚 See the Apify API documentation for full details.

The Apify Schedules feature lets you trigger this Actor on any cron interval. Run daily at midnight for next-day grids, or hourly for catalog updates as new shows are added.


🌟 Beyond business use cases

Data like this powers more than commercial workflows. The same structured records support research, education, civic projects, and personal initiatives.

🎓 Research and academia

  • TV consumption and trend analyses
  • Media studies coursework on network programming
  • Cultural and language studies across markets
  • Reproducible TV datasets for sociology papers

🎨 Personal and creative

  • Side projects, indie EPG apps, portfolio demos
  • Personal watch trackers and recommendation tools
  • Show-discovery dashboards and visualizations
  • Fan wiki content sourcing

🤝 Non-profit and civic

  • Accessibility-focused TV guides for screen readers
  • Public-service broadcaster coverage maps
  • Media literacy education resources
  • Open culture data contributions

🧪 Experimentation

  • Train show-recommendation ML models
  • Prototype voice assistants for TV
  • Test EPG layouts with real data
  • Build agent pipelines that summarize tonight's grid

🤖 Ask an AI assistant about this scraper

Open a ready-to-send prompt about this ParseForge actor in the AI of your choice:


❓ Frequently Asked Questions

🧩 How does it work?

Pick a mode, set filters like country and date or a search query, click Start, and the Actor pulls one clean record per episode, show, or person. No browser automation, no captchas, no setup.

🌍 How many countries are supported for the daily schedule?

55 countries across every major broadcast market: US, GB, CA, AU, DE, FR, ES, IT, JP, KR, BR, MX, IN, ZA, plus 41 more.

📅 Can I get tomorrow's or last week's schedule?

Yes. Set the date field to any YYYY-MM-DD value. The source covers past, present, and announced future air dates.

🎬 Can I get full show metadata including episodes?

Yes. Run with mode: "showDetail" and pass the numeric showId (e.g. 169 for Breaking Bad). You get show summary, genres, network, premiered and ended dates, ratings, IMDb cross-references, and the full episode list.

🧑 Can I look up actors and crew?

Yes. Run with mode: "people" and pass a peopleQuery (e.g. "Hugh Laurie"). You get person ID, country, birthday, gender, and image URL.

⏰ Can I schedule regular runs?

Yes. Use Apify Schedules to trigger this Actor on any cron interval. Common patterns: daily at midnight for next-day grids, or hourly for show catalog updates.

🔗 Are external IDs included for cross-system joins?

Yes. Every show record carries imdb, thetvdb, and tvrage IDs where available, so you can join against IMDb, TheTVDB, or any other entertainment dataset.

💳 Do I need a paid Apify plan to use this Actor?

No. The free Apify plan is enough for testing and small runs (10 records per run). A paid plan lifts the limit and gives you access to scheduling, higher concurrency, and full schedule pulls.

🔁 What happens if a run fails or gets interrupted?

Apify automatically retries transient errors. If a run still fails, inspect the log in the Runs tab, fix the input, and re-run. Partial datasets from failed runs are preserved so you never lose progress.

The source publishes TV schedule data under a permissive open license. Commercial use is generally allowed for analytics, editorial, and product workflows. Review the downstream terms of your specific use case.

🆘 What if I need help?

Our support team is here to help. Contact us through the Apify platform or use the Tally form linked below.


🔌 Integrate with any app

TVmaze Schedule Scraper connects to any cloud service via Apify integrations:

  • Make - Automate multi-step workflows
  • Zapier - Connect with 5,000+ apps
  • Slack - Get premiere notifications in your channels
  • Airbyte - Pipe TV grids into your warehouse
  • GitHub - Trigger runs from commits and releases
  • Google Drive - Export datasets straight to Sheets

You can also use webhooks to trigger downstream actions when a run finishes. Push fresh grids into your EPG backend, or alert your team in Slack when a tracked show airs.


💡 Pro Tip: browse the complete ParseForge collection for more reference-data scrapers.


🆘 Need Help? Open our contact form to request a new scraper, propose a custom data project, or report an issue.


⚠️ Disclaimer: this Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by TVmaze, any TV network, or any production studio. All trademarks mentioned are the property of their respective owners. Only publicly available open TV schedule data is collected.