All scrapers

Social & video

YouTube

youtube.com

98% Success rate
10.1s Avg response
In-house anti-bot Protection
6,000 calls Measured over

YouTube pages are heavy client-rendered applications, so the data only exists after JavaScript has run. We render the full page, which is also what makes channel-level data such as the public business email reachable.

What you can extract

  • Video title, description and publish date
  • View, like and comment counts
  • Channel name, subscriber count and country
  • Public channel contact email where present
  • Search and channel listing pages

How to scrape it

curl -X POST \
  -H "X-ScrapeUnblocker-Key: $SU_API_KEY" \
  "https://api.scrapeunblocker.com/getPageSource?url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DdQw4w9WgXcQ&parsed_data=true"
import requests

resp = requests.post(
    "https://api.scrapeunblocker.com/getPageSource",
    headers={"X-ScrapeUnblocker-Key": SU_API_KEY},
    params={"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ", "parsed_data": True},
)
print(resp.text)
import { ScrapeUnblockerClient } from 'scrapeunblocker';

const su = new ScrapeUnblockerClient({ apiKey: process.env.SU_API_KEY });

const results = await su.getPageSource({
  url: 'https://www.youtube.com/watch?v=dQw4w9WgXcQ',
  parsedData: true,
});
console.log(results);

Requests are POST and take their parameters in the query string. Browser rendering always happens - there is no flag to enable.

Read the API docs

Related scrapers

Start scraping this site today

Free tier included. No credit card required to test it.