Request a tool
All toolsMCP serverRequest a toolPlatformsCategories
IMDb Search Scraper icon

IMDb Search Scraper

Search IMDb for movies, shows, and people. Get the IMDb id, year, top cast, poster, and URL back as clean rows. Batch a whole watchlist at once.

Run this in the cloudRun on Apify →

Media & Entertainment Data

How it works

  1. 1
    Open it on Apify

    Hit Run on Apify — it opens the tool in the cloud, no install.

  2. 2
    Set the inputs

    Adjust query, queries, type (sensible defaults are pre-filled).

  3. 3
    Click Run

    The tool runs on Apify’s cloud and collects the data for you.

  4. 4
    Export the results

    Download as JSON, CSV or Excel, or pipe straight into your app, Google Sheets, or an AI agent.

Inputs

FieldWhat it doesType
queryA single thing to search IMDb for — a movie, TV show or person name, e.g. "breaking bad" or "tom hanks". For several searches at once, use the "queries" field below instead (or as well).string
queriesRun several searches in one go — one request per term, results merged and de-duplicated by IMDb id. Use this to get more than the ~8 results a single query returns (the suggestion API has no pagination). Example: ["inception", "the matrix"]. If both "query" and "queries" are set, all are searched.array
typeWhich kinds of results to keep: "all" (titles + people + companies), "titles" (movies/shows only, IMDb ids starting tt), or "people" (cast/crew only, ids starting nm).string
maxItemsMaximum number of de-duplicated rows to return across all queries. NOTE: a single query returns a fixed ~8 results (the suggestion API has no pagination); to get more, add more terms to "queries". If maxItems exceeds what's available, the actor just returns what it found.integer
notionConnectorOptional. Write each item as a page into your Notion when the run finishes. Authorize a Notion connector once in Settings → API & Integrations → MCP connectors, then pick it here. Leave empty to skip (default) — results are always saved to the dataset regardless.string
notionParentIdOptional. The Notion data source ID of the database to write into (only used if a Notion connector is set). Leave empty to create the pages privately in your workspace instead.string

What you get

A structured dataset — each result includes fields like:

categoryidimagekindrankstarsOrKnownFortitleurlyearyearRange

Export every run as JSON, CSV or Excel, or send it to your app, a database, Google Sheets, or an AI agent.

3 ready-to-run use cases

IMDb ID, Year & Cast Lookup by Movie or TV Title

Type a movie or TV title and get the matching IMDb ID, release year, top cast, and poster URL. Title-to-ID search for catalog and metadata enrichment.

IMDb Actor & Director Search by Name to Person ID

Looking up people on IMDb? Search any actor, director, or writer by name to return their person ID (nm), known-for titles, and headshot image URL.

Bulk Title to IMDb ID Lookup: Resolve a List at Once

Feed a list of movie and show titles and get one merged, de-duplicated table of IMDb IDs and years. Batch title-to-ID matching for datasets and spreadsheets.

IMDb Search Scraper

Search IMDb for movies, TV shows and people using IMDb's own public suggestion API — the same endpoint that powers the autocomplete in IMDb's search box. No API key, no login, no scraping HTML.

Give it a query like breaking bad or tom hanks and get back clean, structured rows: the IMDb id, title/name, type, year, the "stars / known for" line, the poster/headshot image, and the canonical imdb.com URL.

What you get per result

FieldNotes
idIMDb id, e.g. tt0903747 (title), nm0000158 (person), co... (company).
kindtitle, person, company, or other — derived from the id prefix.
titleThe title or person name.
categoryIMDb's type label, e.g. feature, TV series, video game, video. Null for people.
yearRelease year (titles). Null when not applicable.
yearRangeRun span for series, e.g. 2008-2013. Null when not applicable.
starsOrKnownForMain cast for a title, or the "known for" line for a person (e.g. Producer, Cast Away (2000)).
rankIMDb popularity rank (lower = more popular).
imagePoster / headshot URL. Null when IMDb has no image.
urlCanonical IMDb URL: imdb.com/title/{id}/ or imdb.com/name/{id}/.

Input

FieldNotes
queryA single search term — a movie, show, or person name.
queriesAn array of terms searched in one run; results are merged and de-duplicated by id. Use this to get more than ~8 results.
typeall (default), titles (ids starting tt), or people (ids starting nm).
maxItemsCap on the number of de-duplicated rows returned (default 50).

Important: no pagination

The IMDb suggestion API returns a fixed ~8 results per query and has no pagination. If you set maxItems higher than that, the actor simply returns what's available (and logs it). To get more results, pass several related terms in queries — each is fetched separately and the rows are de-duplicated by IMDb id.

Output

One dataset row per de-duplicated result, flagged ok: true. Pricing is pay-per-result — you are only charged for genuine result rows. Nothing is charged for:

  • empty/invalid input (a single ok: false row with errorCode: "BAD_INPUT"),
  • no results for the query (NO_RESULTS),
  • rate limits or network errors (RATE_LIMITED / NETWORK).

Proxy

The suggestion API is a public, no-auth endpoint with no anti-bot, so no proxy is required and the default runs without one (saving proxy credits). Only enable Apify Proxy if you hit IP rate limits at very high volume.

Troubleshooting

  • Got a NO_RESULTS row with type set? The suggestion API may have returned only other kinds (e.g. all titles when you asked for people). Try type: "all".
  • Want more than ~8 rows? That's the API's per-query cap — add more terms to queries.

Examples

{ "query": "breaking bad", "maxItems": 10 }
{ "query": "tom hanks", "type": "people" }
{ "queries": ["inception", "the matrix"], "type": "titles" }