Netflix Scraper
Pricing
from $2.00 / 1,000 netflix title scrapeds
Netflix Scraper
Scrape Netflix titles into flat rows with synopsis, cast, creators, genres, ratings, artwork and trailers, joined to Netflix's own weekly Top 10 view counts.
Pricing
from $2.00 / 1,000 netflix title scrapeds
Rating
0.0
(0)
Developer
ParseForge
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
7 days ago
Last modified
Categories
Share

๐ฟ Netflix Scraper
๐ Export Netflix catalogue data in seconds. 38 fields per title, and every row carries Netflix's own published viewing figures: Outer Banks came back at rank 1 with 9,400,000 weekly views and 80,600,000 hours viewed, not an estimate.
Netflix publishes two things separately and never joins them for you. Its title pages carry the metadata (synopsis, cast, creators, directors, genres, maturity rating, artwork, trailers), and top10.netflix.com publishes the actual weekly viewing figures. This Actor reads both and returns them as one flat row per title. No login, no API key, no cookie.
Every run returns 38 fields per title. You can point it at title URLs, at bare numeric Netflix IDs, or at any of the 635 public Netflix genre collections, each of which lists between 326 and 349 titles. The chart join reaches back to July 2021 and covers the 3,424 titles that have ever entered a global weekly Top 10, with optional per-country coverage across 94 countries. Five titles take about 15 seconds end to end.
| ๐ฏ Target Audience | ๐ก Primary Use Cases |
|---|---|
| Streaming and media analysts | Track what Netflix is actually pushing, with real view counts rather than trade-press estimates. |
| Content acquisition and licensing teams | Measure how titles in a genre perform before bidding on comparable content. |
| Data journalists and researchers | Build reproducible datasets on streaming performance from first-party numbers. |
| Recommendation and ML engineers | Train on catalogue metadata joined to genuine engagement signals. |
๐ What the Netflix Scraper does
๐ก Why it matters: Most Netflix scrapers hand you a synopsis and a cast list. That tells you what a title is, never how it did. Netflix itself publishes weekly views and hours viewed, but in a separate TSV keyed on a plain title string, so almost nobody joins the two. This Actor does that join on every row.
- ๐ Netflix's own view counts, joined in. Latest chart rank, weekly views, weekly hours viewed, best rank ever, and total weeks in the Top 10, straight from Netflix's published engagement data.
- ๐ All-time placement. For the 32 titles on Netflix's all-time most-popular list, the rank and the views in the first 91 days.
- ๐ฌ Full title metadata. Synopsis, primary and secondary genres, cast, creators, directors, content rating, numeric maturity level, season count, and Netflix Original and ads-plan flags.
- ๐ผ Three distinct artworks. The box-art image, the wide billboard, and the hero image, each a different asset rather than the same URL repeated.
- โถ๏ธ Trailer assets. Trailer title, direct MP4 URL, ISO 8601 duration, and upload date.
- ๐ 635 genre collections. Every public Netflix genre, verified against Netflix's own sitemap, as a searchable dropdown. No guessed IDs.
- ๐ Optional per-country chart coverage. The full list of countries where a title has ever charted, across 94 countries.
- ๐ฆ One fixed schema. Every title lands with the same 38 columns and sentinels instead of nulls, so CSV and Excel imports stay predictable.
๐ฌ Full Demo (๐ง Coming soon)
A short walkthrough video is in production and will land here.
๐ Output
Each Netflix title becomes one flat row. These are the main fields:
| Field | Type | Description |
|---|---|---|
๐ผ imageUrl | string | Box-art image for the title. |
๐ฌ title | string | Title name as Netflix shows it. |
๐ type | string | Movie or Show. |
๐ url | string | Canonical Netflix title URL. |
๐ titleId | string | Numeric Netflix title ID. |
๐ synopsis | string | Netflix's own synopsis. |
๐ท primaryGenre | string | First genre Netflix assigns. |
๐ contentRating | string | Certification such as TV-MA or PG-13. |
๐ maturityLevel | integer | Netflix's numeric maturity value, for example 110. |
๐
dateCreated | string | Netflix's schema.org dateCreated. For films this is the release date. |
๐ startDate | string | Netflix's schema.org startDate. Series only. |
๐ seasonCount | integer | Number of seasons. Series only. |
๐
ฝ isNetflixOriginal | string | Yes or No. |
โ
isAvailable | string | Whether the title is streamable in the catalogue reached. |
๐บ isPlayableOnAdsPlan | string | Yes or No. |
๐ catalogCountry | string | Which country's catalogue the row reflects. |
๐ top10Category | string | Films (English), TV (Non-English) and so on. |
๐ top10LatestRank | integer | Most recent weekly chart position. |
๐ top10LatestWeek | string | Week that rank belongs to. |
๐ top10WeeklyViews | integer | Views Netflix reported for that week. |
โฑ top10WeeklyHoursViewed | integer | Hours viewed Netflix reported for that week. |
๐
top10BestRank | integer | Best global rank the title has ever reached. |
๐ top10WeeksInTop10 | integer | Total weeks it has spent in a global Top 10. |
๐ allTimeRank | integer | Rank on Netflix's all-time most-popular list. |
๐ allTimeViewsFirst91Days | integer | Views in the first 91 days, for all-time list titles. |
๐ฅ trailerTitle | string | Name of the trailer or clip. |
โถ๏ธ trailerUrl | string | Direct MP4 URL. |
โณ trailerDuration | string | ISO 8601 duration, for example PT1M47S. |
๐ค trailerUploadDate | string | When the trailer was published. |
๐ heroImageUrl | string | Hero artwork. |
๐ผ billboardImageUrl | string | Wide billboard artwork. |
๐ท genres | array | All genres Netflix assigns. |
๐ญ cast | array | Billed cast. |
โ๏ธ creators | array | Series creators. |
๐ฌ directors | array | Film directors. |
๐ top10Countries | array | Countries where the title has ever charted. Opt-in. |
๐ scrapedAt | string | ISO timestamp of collection. |
โ error | string | Populated only on failed rows. |
Three real records from a run:
{"title": "Outer Banks","type": "Show","titleId": "80236318","primaryGenre": "Adventure","contentRating": "TV-MA","seasonCount": 5,"isNetflixOriginal": "Yes","top10LatestRank": 1,"top10LatestWeek": "2026-08-23","top10WeeklyViews": 9400000,"top10WeeklyHoursViewed": 80600000,"top10BestRank": 1,"top10WeeksInTop10": 33,"cast": ["Chase Stokes", "Madelyn Cline", "Madison Bailey"],"genres": ["Adventure", "Dramas"]}
{"title": "My Life With the Walter Boys","type": "Show","titleId": "81426967","primaryGenre": "Romance","contentRating": "TV-14","seasonCount": 3,"isNetflixOriginal": "Yes","top10LatestRank": 3,"top10LatestWeek": "2026-08-23","top10WeeklyViews": 4300000,"top10WeeklyHoursViewed": 33900000,"top10BestRank": 1,"top10WeeksInTop10": 18,"cast": ["Nikki Rodriguez", "Sarah Rafferty", "Marc Blucas"],"genres": ["Romance", "Dramas"]}
{"title": "Death of the Pastor's Wife","type": "Show","titleId": "81989322","primaryGenre": "Documentaries","contentRating": "TV-MA","seasonCount": 1,"isNetflixOriginal": "Yes","top10LatestRank": "Not Disclosed","top10WeeklyViews": "Not Disclosed","top10WeeksInTop10": "Not Disclosed","cast": [],"genres": ["Documentaries"]}
That third row is the honest case. The title has never entered a global Top 10, so the chart columns carry Not Disclosed rather than a zero that would read as "nobody watched it".
โจ Why choose this Actor
- Real viewing figures, not estimates. Netflix's own weekly views and hours viewed, joined onto the catalogue metadata.
- Verified genre list. All 635 genre IDs come from Netflix's published sitemap, not from a blog post. Nothing in the dropdown 404s.
- Complete rows. Netflix renders its schema.org block only about half the time on any given request. This Actor re-requests until it lands, which is why
contentRating,seasonCountand the trailer fields are populated instead of blank. - Honest about its limits. The section below tells you exactly what this Actor cannot reach, before you spend anything.
- Fast and light. Plain HTTP, no browser, 512 MB, about 15 seconds for 5 titles.
- No credentials. No Netflix account, no cookie, no session token.
๐ How it compares to alternatives
| This Actor | Typical Netflix scrapers | |
|---|---|---|
| Netflix's own weekly view counts | Yes, joined onto every row | No |
| Weeks in Top 10 and best-ever rank | Yes | No |
| All-time views in first 91 days | Yes, for the 32 listed titles | No |
| Genre discovery | 635 verified genre collections | Keyword search, or a short hand-picked list |
| Fields per title | 38 | Commonly 10 to 20 |
| Three separate artwork assets | Yes | Usually one |
| Search by free-text keyword | No. See the ceiling below | Yes, several competitors do this |
| Login required | No | No |
The ceilings, stated plainly.
- No keyword search. Netflix serves
/searchonly to signed-in members, so there is no logged-out search surface to read. Discovery here runs through the 635 genre collections and through title URLs or IDs you supply. If you need free-text search, a competitor that logs in is the right tool and this one is not. - 326 to 349 titles per genre. A Netflix genre page renders one fixed slice and offers no pagination.
?page=2and friends return the same rows, so that slice is the per-genre maximum. - The catalogue is the exit IP's country. Netflix serves regional catalogues, and a locale prefix in the URL does nothing. On the default Apify proxy you get the US catalogue, and
catalogCountryon every row says so. PointproxyConfigurationat another country to reach a different catalogue, which needs residential proxy access on your account. - Chart matching is by title name. The join uses Netflix's published chart names against Netflix's own page titles, which matched 64.1% of the titles on a sample genre page. A title whose chart name differs from its page name will show
Not Disclosedrather than a wrong number. - No view counts at country level. Netflix publishes
weekly_viewsonly for the global charts. The per-country data gives coverage, not numbers.
๐ How to use
- Create a free Apify account. New accounts get $5 in free credit. Sign up here.
- Open the Actor and go to the Input tab.
- Choose your titles. Paste Netflix title URLs, drop in bare numeric title IDs, or pick from the genre dropdown. You can combine all three.
- Set Max Items to the number of titles you want back.
- Leave chart enrichment on to get the view counts, and optionally switch on per-country coverage.
- Filter by type if you want films only or series only.
- Click Start and watch the log.
- Download your data from the Storage tab as CSV, JSON, Excel or XML, or pull it from the API.
๐ผ Business use cases
๐ Genre performance benchmarking.
A content strategy team pulls every title in the Thrillers and Documentaries collections, then ranks them by top10WeeklyViews and top10WeeksInTop10. Because the numbers are Netflix's own, the ranking survives scrutiny in a board deck in a way that trade-press estimates do not.
๐ค Licensing comparables.
An acquisitions analyst evaluating a thriller package pulls comparable titles by genre, filters to isNetflixOriginal: "No" to isolate licensed content, and checks how licensed thrillers actually performed before putting a number on the deal.
๐ฐ Data journalism.
A reporter covering streaming builds a reproducible dataset joining catalogue metadata to first-party viewing figures, including top10BestRank and top10WeeksInTop10, so the story cites Netflix's own published numbers rather than an analyst's model.
๐ค Recommender training data.
An ML team assembles a training set of catalogue metadata (genres, cast, creators, maturity level, synopsis) paired with genuine engagement labels from the chart columns, instead of proxying popularity from third-party ratings.
๐ Automating Netflix Scraper
- Make: run the Actor every Wednesday after Netflix publishes the new weekly charts, then update your tracking sheet.
- Zapier: connect the Actor to thousands of apps and start a run from any trigger.
- Slack: post the week's chart movers into a team channel so the content team sees them without opening a dashboard.
- Airbyte: sync the dataset into your warehouse to build a long-run view of catalogue performance.
- GitHub: schedule runs from an Actions workflow and commit the results alongside your analysis code.
- Google Drive: drop each run's CSV into a shared folder for the wider team.
๐ Beyond business use cases
- Research: media scholars studying what actually travels on the largest streaming service, using first-party figures.
- Personal: film and TV enthusiasts building a watchlist from a genre collection, sorted by how well titles genuinely performed.
- Non-profit: cultural organisations tracking how documentary and non-English content is distributed and watched.
- Experimentation: developers prototyping popularity models against real engagement labels rather than scraped star ratings.
๐ค Ask an AI assistant about this scraper
Paste this into ChatGPT, Claude or any assistant to plan your run:
I am using the ParseForge Netflix Scraper on Apify. It takes Netflix title URLs, bare numeric title IDs, or a pick from 635 Netflix genre collections, and returns 38 fields per title: synopsis, cast, creators, directors, genres, content rating, maturity level, season count, three artwork URLs, trailer assets, and Netflix's own published Top 10 figures (latest rank, weekly views, weekly hours viewed, best rank, weeks in Top 10, and all-time views in the first 91 days). It cannot do free-text search, each genre page tops out at about 349 titles, and the catalogue returned is the one for the proxy's country, which defaults to the US. Help me design an input for [describe your goal].
โ Frequently Asked Questions
๐ Do I need a Netflix account? No. Everything this Actor reads is served to logged-out visitors.
๐ Can I search Netflix by keyword?
No. Netflix serves /search only to signed-in members, so there is no logged-out search endpoint to read. Use the genre collections or supply title URLs and IDs.
๐ Which country's Netflix am I getting?
Whichever country your proxy exits from, which is the US by default. Every row carries catalogCountry so you always know. A locale prefix in the URL has no effect, so the proxy is the only real lever.
๐ Where do the view counts come from?
Netflix publishes them itself at top10.netflix.com, updated weekly. This Actor downloads that data and joins it onto each title by name.
๐ค Why do some rows say "Not Disclosed" in the chart columns? Because that title has never entered a global weekly Top 10, or its chart name differs from its page name. A sentinel is used rather than a zero, which would falsely read as "no views".
๐ How far back does the chart data go? To the week of 4 July 2021, covering the 3,424 titles that have ever charted globally.
๐ฌ How many titles can I get from one genre? Between 326 and 349. Netflix renders a genre page as one fixed slice with no pagination, so that is the maximum, and this Actor reports the true count it found.
๐ What is the difference between top10BestRank and top10LatestRank?
top10LatestRank is the most recent week the title charted. top10BestRank is the best position it ever reached, which is usually the more useful number for comparing titles.
โก How fast is it and how much memory does it need? Plain HTTP with no browser, 512 MB, about 15 seconds for 5 titles including downloading the chart data.
๐งฑ Do I need a proxy? Yes, and it is on by default. Netflix rate-limits a single IP after roughly 400 requests, and once it does, that IP stops responding for several minutes.
๐ Why are contentRating or the trailer fields sometimes empty?
Netflix omits its schema.org block from a large share of responses. This Actor re-requests until it appears, so this is now rare. A handful of titles genuinely carry no trailer or release date in Netflix's own markup.
๐ฆ What export formats are supported? CSV, JSON, Excel and XML from the Storage tab, or straight from the Apify API.
๐ Integrate with any app
Connect this Actor to Make, Zapier, Airbyte, n8n, Slack, Google Drive, GitHub Actions, or your own code through the Apify API and official clients for JavaScript and Python.
๐ Recommended Actors
- YouTube Comments Scraper for audience reaction to trailers and shows.
- TikTok Hashtag Analytics Scraper to measure how a title travels on social.
- Reddit Scraper for discussion volume around a release.
- X.com Profiles Scraper to track cast and show accounts.
- Twitch Live Streams Scraper for adjacent streaming-attention data.
๐ก Pro Tip: browse the complete ParseForge collection.
๐ Need Help? Open our contact form
โ ๏ธ Disclaimer: independent tool, not affiliated with Netflix; only publicly available data.