Dailymotion Video Scraper avatar

Dailymotion Video Scraper

Pricing

from $2.40 / 1,000 results

Go to Apify Store
Dailymotion Video Scraper

Dailymotion Video Scraper

Extract public Dailymotion videos as clean JSON: title, description, duration, views, likes, upload time, channel, category and tags. Search by keyword, channel or category with exact date windows, past the 1,000-result cap. No login, no API key. Pay per result.

Pricing

from $2.40 / 1,000 results

Rating

0.0

(0)

Developer

Lowland Data

Lowland Data

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Dailymotion Video Scraper (search, channels, categories)

Dailymotion hosts news, sport, music and entertainment video from broadcasters and publishers all over Europe, but the site gives you a player and a scroll, not a table. Tracking what a channel publishes, counting how many videos mention a topic, or comparing views across publishers needs the videos as rows.

Give it search keywords, channel names, a category, or any mix, and every video comes back as one item: title, description, duration, views, likes, upload time, category, language, country, tags, thumbnail and link. No login, no API key, no Dailymotion account. It reads Dailymotion's public Data API at api.dailymotion.com. The publishing channel's display name and handle stay on the row as the byline; avatars, follower counts, commenters and every other person-level field are never requested.

Quick start (30 seconds)

  1. Put a keyword into searchQueries, e.g. climate change, or a channel into channels, e.g. euronews-en.
  2. Click Start. That's the whole minimum setup.
  3. When the run finishes, open the dataset's Overview tab for a clean table, or Export it as CSV/Excel/JSON.

Optional knobs: a category, a language or country, a sort order, an upload-date window, a duration range. Any input works on an hourly Schedule.

What you can build with it

  • Watch a publisher. Put the channel in channels, leave the sort on newest first, and set uploadedAfter to yesterday. A daily Schedule then collects exactly the videos the channel published since the last run, each with its views at that moment.
  • Monitor a topic. Put one keyword per line in searchQueries. Each is searched on its own, and a video that matches two searches is delivered once.
  • Compare reach. views and likes are captured at scrape time. Run weekly on the same channels and diff the snapshots to see which videos keep growing and which publishers gain ground.
  • Build a dataset. Pick a category, a language and a date window to collect, say, every French-language sport video of a month. Past Dailymotion's 1,000-result limit per search the actor splits the work by date for you (see below).
  • Feed an AI agent clean data. Every field is structured and predictable, so an assistant or pipeline can read a channel's latest 200 videos directly.

What you get

Each video is one dataset item:

{
"id": "xbry6w6",
"url": "https://www.dailymotion.com/video/xbry6w6",
"title": "Bahamas: King Charles III dances with locals during Caribbean visit",
"description": "Bahamas: King Charles III dances with locals during Caribbean visit\n\nKing Charles III showed off his dance moves during a colourful Junkanoo street parade in Nassau, the capital of the Bahamas, on Wednesday, 28 October, as part of his first Caribbean tour since becoming monarch.\n\nREAD MORE : http://www.euronews.com/2026/10/29/bahamas-king-charles-iii-dances-with-locals-during-caribbean-visit\n\nLet the pictures do the talking: subscribe to No Comment\n\nNo Comment is brought to you by euronews, the most watched news channel in Europe.",
"durationSeconds": 60,
"views": 212,
"likes": 0,
"createdAt": "2026-10-29T09:15:54.000Z",
"channel": "euronews-en",
"channelTitle": "euronews (in English)",
"category": "news",
"language": "en",
"country": "GB",
"tags": ["No Comment", "16:9", "World", "bahamas", "nassau", "king-charles", "commonwealth"],
"thumbnailUrl": "https://s1.dmcdn.net/v/gSLvc1gum-i6aPgCi/x480",
"isExplicit": false
}

Field notes, so you know exactly what you are buying:

  • id is Dailymotion's own video id and a stable key. url is the human link.
  • channelTitle is the publisher's display name and channel its handle (the part after dailymotion.com/). Together they are the byline of the video. Pass channel back into the channels input to read that publisher.
  • createdAt is the upload time in UTC. durationSeconds is the video's length in seconds.
  • views and likes are Dailymotion's counters at scrape time. They keep moving, so a later run gives a later number.
  • description is the uploader's text with Dailymotion's markup turned into plain text and line breaks. It is null when the uploader left it empty. Email addresses in titles, descriptions and tags are replaced by [email removed].
  • category is the Dailymotion category the video is filed under, one of the values in the category input. language and country are the two-letter codes the uploader gave the video.
  • isExplicit is always false: Dailymotion's public API leaves explicit videos out of its listings, so none can be returned.
  • There is no comment count. Dailymotion's public API does not offer one, and this actor does not collect comments or who wrote them.

How much does it cost to scrape Dailymotion?

$3.00 per 1,000 videos delivered, pay-as-you-go, no subscription, and you pay per result rather than per hour. A run that finds nothing still costs the $0.005 actor start. In plain dollars:

  • 100 videos ≈ $0.30: a daily publisher watch.
  • 500 videos ≈ $1.50: a topic snapshot.
  • A 10,000-video crawl ≈ $30: a category over a long date window, deduplicated.

The price is all-inclusive: your runs' platform usage is covered by it, with no separate compute or proxy charges. The actor reads Dailymotion directly and only falls back to the Apify proxy if the request is blocked, so there is nothing to configure.

Free-plan runs are limited to a sample of 5 items, enough to evaluate the output format against your real keywords and channels.

Measured on the Apify platform: 25 videos in about 5 seconds, 300 videos in 16 to 30 seconds depending on the search, and a full 1,000-video window in 2 to 2.5 minutes, with the run using under 70 MB of memory.

Not technical? Let your AI assistant set it up

Copy this into ChatGPT, Claude or any AI assistant, fill in the one line, and follow the conversation:

Help me set up the "Dailymotion Video Scraper" actor on Apify
(https://apify.com/lowlanddata/dailymotion-scraper). Guide me one step at a time.
What I want to watch: [E.G. "new videos from the channel euronews-en, and any video about climate change"]
Guide me to:
1. Propose my input values: searchQueries (one keyword per line), channels (the name
after dailymotion.com/ on the channel page, or the link), an optional category,
uploadedAfter for a date window, and maxItems.
2. Check that each channel name is right by opening dailymotion.com/<name> in my
browser. If the channel page opens, the actor can read it.
3. Create a free Apify account (apify.com), open the actor page, paste the values
into the Input form, and start a run.
4. Set up a daily Schedule in the Apify Console with the same input, plus an email
or Slack integration so new videos reach me automatically.
5. Show me how to export results as CSV/Excel, or read them from the API if I code.
6. If the results are what I wanted, remind me at the end to leave a quick rating on the actor page, and to report anything broken or missing on its Issues tab.

Input

FieldDescription
searchQueriesKeywords, one per line, e.g. climate change. Each is searched on its own; a video found twice is delivered once.
channelsPublisher channels, one per line: the name after dailymotion.com/ (euronews-en) or the link. With keywords, each keyword is searched inside each channel.
categoryOnly videos filed under one Dailymotion category (News, Sport, Music, Tech and so on). Default: any.
sortNewest first (default), oldest first, relevance (needs a keyword), most viewed (all time, today, this week, this month) or trending.
languageTwo-letter language code of the video, e.g. fr. Optional.
countryTwo-letter country code the uploader gave the video, e.g. be. Optional.
uploadedAfterOnly videos uploaded on or after this date (YYYY-MM-DD, or a full ISO timestamp). Optional.
uploadedBeforeOnly videos uploaded on or before this date (YYYY-MM-DD, or a full ISO timestamp). Optional.
minDurationSecondsOnly videos at least this long, in seconds. Optional.
maxDurationSecondsOnly videos at most this long, in seconds. Optional.
maxItemsStop after this many videos in total (default 500).
proxyConfigurationOptional. Direct by default; the Apify proxy joins on its own if blocked. Set one to force a proxy.

A run needs at least one of searchQueries, channels or category. Without one of them Dailymotion lists only a thin sample of its videos, so the actor refuses the input with a readable message instead of returning that sample. Channels are read in the order you list them, and maxItems counts across all of them. A channel name that does not exist costs that channel, not the run: the rest are delivered with an honest note in the run status.

Dates and durations are exact. Dailymotion's own date and duration filters are coarse (its duration filter works in whole minutes and its date filter runs on a slightly different clock), so the actor asks Dailymotion for a slightly wider range and then applies your exact bounds itself.

Use it from your code

Run the actor and get videos straight back with one HTTP call (fine for scoped runs up to ~5 minutes):

curl "https://api.apify.com/v2/acts/lowlanddata~dailymotion-scraper/run-sync-get-dataset-items?token=<YOUR_API_TOKEN>" \
-X POST -H "Content-Type: application/json" \
-d '{"searchQueries": ["climate change"], "maxItems": 100}'

Node.js:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });
const run = await client.actor('lowlanddata/dailymotion-scraper').call({
channels: ['euronews-en'],
uploadedAfter: '2026-10-01',
maxItems: 200,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();

Python:

from apify_client import ApifyClient
client = ApifyClient("<YOUR_API_TOKEN>")
run = client.actor("lowlanddata/dailymotion-scraper").call(
run_input={"searchQueries": ["climate change"], "maxItems": 100})
items = client.dataset(run["defaultDatasetId"]).list_items().items

Schedules, webhooks and the Make/Zapier/n8n integrations all work out of the box: this is a standard Apify actor.

Use it with AI agents (MCP)

Claude, Cursor and other MCP-capable agents can run this scraper as a tool through Apify's hosted MCP server: the agent fills in the keywords and channels itself, starts the run and reads the results: no glue code.

Claude Code:

$claude mcp add apify --transport http "https://mcp.apify.com?actors=lowlanddata/dailymotion-scraper"

Cursor or Claude Desktop (add a custom connector / MCP server with this URL):

https://mcp.apify.com?actors=lowlanddata/dailymotion-scraper

Sign in with your Apify account when prompted. Runs are billed to it. Setup details per client: Apify MCP docs.

Prompts that work once connected:

  • "Get the last 100 videos from the Dailymotion channel euronews-en and summarize what they covered this week."
  • "Find Dailymotion videos about 'climate change' uploaded this month and list them by views."
  • "Compare the average views per video of these three Dailymotion channels over their last 50 uploads each."

Beyond the 1,000-result window

Dailymotion serves at most 1,000 results for any one search: ten pages of 100, and nothing after that, whatever the real number of matches. When a search has more, the actor keeps going on its own by splitting the work over upload dates, and removes duplicates by video id.

  • Newest first or oldest first: each pass starts just beyond the last video the previous pass reached, so the walk moves through time in order.
  • Any other order (most viewed, trending, relevance): the date range is cut in halves until every part fits inside the limit, and each part is read in your chosen order. The order therefore holds inside each part, not across the whole run, and the run log says so when it happens.

Checked on the platform: a 12-hour window holding 1,044 videos came back as the same 1,044 ids whether it was read newest first, oldest first or by views.

You can do the same by hand with uploadedAfter and uploadedBefore, one window per run, if you want to control the slices yourself. If more than 1,000 videos were uploaded in the very same second, the surplus cannot be reached.

This actor reads the public Data API that Dailymotion serves to anyone without a login or a key. It does not log in, does not use Dailymotion's private or authenticated endpoints, does not solve CAPTCHAs, and requests are paced at roughly four a second at most. A video's publisher name and handle stay on the row as its byline. Everything beyond the published video is never requested: the API call names a fixed list of video fields, the output is built from an allow-list of those fields, and a test on every build fails if an avatar, a follower count, a comment, a commenter or any other person-level field ever reaches the output.

One honest limit: titles, descriptions and tags are the uploader's own words. Email addresses in them are replaced by [email removed], because broadcasters often paste a reporter's personal work address there. Everything else an uploader types, such as a name or a phone number, is delivered as written. The guarantee covers the data fields, not what uploaders choose to publish.

Another: Dailymotion's terms of use restrict automated access to the service unless Dailymotion has approved it in writing. Whether collecting this public data is allowed under those terms and your jurisdiction's rules depends on your use, and it is yours to assess. If you need certainty, ask Dailymotion for permission before building on it. This is not legal advice.

Is there a Dailymotion API alternative?

Dailymotion does publish a Data API, and this actor is built on its public, unauthenticated part. What the actor adds is everything around it: several keywords and channels in one run, exact date and duration filters, the continuation past the 1,000-result limit, deduplication, flat rows ready for a spreadsheet, a schedule, and the same data through one HTTP call (run-sync-get-dataset-items) or as an MCP tool for AI agents, with no code of your own.

Does Dailymotion block scrapers?

The public Data API answers plain requests openly, including from datacenter addresses, and this actor stays inside that welcome: paced requests, plain direct fetches, load kept negligible. No CAPTCHA fights, no bot-wall cat-and-mouse. If Dailymotion ever starts refusing the direct request, the actor switches to the Apify proxy by itself and says so in the run log.

How do I monitor a Dailymotion channel?

Put the channel in channels, leave sort on newest first, set uploadedAfter to yesterday's date, and add a daily Schedule in the Apify Console with an email/Slack integration on the runs. The dataset then contains only the new videos, each with its views at that moment, and a newest-first walk stops as soon as it reaches older videos, so the watch stays quick and cheap. The AI-assistant prompt above walks a non-technical user through exactly this setup.

FAQ

Which channels can it read? Any Dailymotion channel with a public page. The name is the part after dailymotion.com/ on the channel page, for example euronews-en; a full link works too. Names that do not exist are listed in the run status and skipped.

Can I search without naming a channel? Yes. Give keywords in searchQueries, or a category, and Dailymotion's whole catalogue is searched.

Can I combine keywords and channels? Yes. Each keyword is searched inside each channel you list, so two keywords and three channels make six searches in one run, with duplicates removed.

Why must I give a keyword, a channel or a category? With none of them Dailymotion returns only a thin sample of its videos, not a meaningful listing. The actor refuses that input and tells you so.

Does it return comments or who wrote them? No. Dailymotion's public API does not offer a comment count on videos, and this actor never collects comments or commenters.

Are email addresses in descriptions kept? No. Any email address found in a title, a description or a tag is replaced by [email removed]. Other text the uploader typed, such as a phone number, is left as written.

Does it collect who uploaded a video? It keeps the publishing channel's display name and handle as the byline of the video. Avatars, follower counts, profile text and everything else about the account are never requested.

Why are some videos missing, or different from what I see on the site? Dailymotion hides videos that are not licensed for the viewer's country, and the platform runs from the US. In a test on news videos about 1.4% (7 of 495 in a four-hour window) were not visible from there. To see another country's catalogue, turn on Apify Proxy, choose the RESIDENTIAL group and a country. Residential traffic is billed to your own Apify account; datacenter proxies do not help here.

Why is isExplicit always false? Dailymotion's public API leaves explicit videos out of its listings, so the field is there for a consistent schema but carries no information.

How exact are the date and duration filters? Exact to the second. The actor asks Dailymotion for a slightly wider range, then keeps only the videos that fit your bounds.

Why are there fewer videos than maxItems? The search simply has fewer matches, or a channel name was not found (the run status lists it), or you are on the free plan, which returns up to 5 items.

What happens above 1,000 matches? The actor splits the search by upload date and reads on until maxItems or the end of the results. See "Beyond the 1,000-result window" above.

How fresh is the data? Live at run time: every run reads Dailymotion directly. For continuous freshness, schedule the actor.

Can I export to Excel or CSV? Yes, every dataset exports as CSV, Excel, JSON or XML from the Apify Console or API.

Does it work with Make, Zapier or n8n? Yes, it is a standard Apify actor; all platform integrations, webhooks and schedules apply.

Do I need a Dailymotion account or API key? Neither. The public Data API needs no login, and that is the only surface this actor reads.

How much does Dailymotion scraping cost here? $3.00 per 1,000 videos, metered on delivery. A 100-video daily watch is roughly $0.30; a failed or empty run costs the $0.005 actor start and nothing per result.

Can I try it before spending anything? Yes, a free-plan run returns up to 5 real videos from your keywords and channels, enough to check the fields against your pipeline.

Can an AI agent fetch Dailymotion videos through this? Yes, connect Apify's hosted MCP server and agents like Claude or Cursor can pick keywords, run the actor and read the videos themselves. Setup is in the MCP section above.

More clean-output data sources from the same maker:

Troubleshooting

The actor fails fast with the reason in the run's status message:

  • "Give at least one of searchQueries, channels or category": add a keyword, a channel or a category. Without one Dailymotion lists only a thin sample of videos.
  • "None of the requested channels was found on Dailymotion": check the names. Open dailymotion.com/<name> in a browser; the part after the slash is what channels expects, for example euronews-en.
  • "N videos fetched; not found: X": channel X does not exist; the rest of the run is delivered normally.
  • "Not a Dailymotion channel name or link": a value in channels is not a channel. A video link, a playlist link or a search link is refused; use the channel name or the channel page link.
  • "sort "relevance" needs at least one search keyword": relevance ranks matches to a keyword, so add one or pick another sort.
  • Some videos from the site are missing: they are probably not licensed for the US, where the platform runs. See "Why are some videos missing" in the FAQ for the residential-proxy route.
  • Fewer items than requested on a free plan: the 5-item free sample cap; run on a paid Apify plan for full results.

Support

Found an issue or missing a field you need? The fastest route is the actor's Issues tab - it is monitored and reports get fixed. For anything private, email contact@lowlanddata.com. This actor is actively maintained.

Working well for you? A rating on this page takes ten seconds and helps other users find a reliable option. It is also the clearest signal of what we should build next.