Skip to main content
How to Download YouTube Videos - Complete Beginner's Guide

How to Download YouTube Videos - Complete Beginner's Guide

Step-by-step guide to downloading YouTube videos for processing with AutoShorts. No programming experience needed!

Nov 21, 20258 min readAutoShorts Team

⚠️ Important: Use a Burner Account

YouTube may flag accounts that download videos. Create and use a separate "burner" YouTube account for downloads. Do NOT use your main account!

1

Open Terminal (Command Line)

On Mac:

  1. Press Cmd + Space together
  2. Type "Terminal" in the search box
  3. Press Enter

On Windows:

  1. Click the Start button (Windows icon)
  2. Type "cmd" or "Command Prompt"
  3. Press Enter

💡 You'll see a black or white window with text - this is the "Terminal" or "Command Prompt". This is where you'll type commands.

2

Check if Python is Installed

Type this command and press Enter:

# On Mac/Linux:

python3 --version

# On Windows:

python --version

✅ Success looks like:

Python 3.11.5

If you see this, you're good to go!

❌ If you see "command not found" or an error:

You need to install Python first:

Download Python from python.org →

Download the latest version, run the installer, and check "Add Python to PATH" during installation.

3

Install yt-dlp (The Download Tool)

This tool downloads YouTube videos. Type this command:

# On Mac/Linux:

pip3 install yt-dlp

# On Windows:

pip install yt-dlp

⏳ This might take 1-2 minutes. You'll see text scrolling by - that's normal! Wait for it to finish.

4

Install ffmpeg (Video Processor)

This helps combine video and audio files together.

On Mac:

brew install ffmpeg

ℹ️ If you see "brew: command not found", you need Homebrew first:Install Homebrew →

On Windows:

  1. Download ffmpeg from ffmpeg.org
  2. Extract the ZIP file
  3. Add the "bin" folder to your System PATH (search "how to add to PATH Windows")
5

Create a Folder for Downloads

Let's create a folder where your videos will be saved:

mkdir youtube-downloads

cd youtube-downloads

Type each command and press Enter. The first creates a folder, the second enters it.

6

Create Python Virtual Environment

This creates an isolated space for the download tool:

# Create virtual environment:

python3 -m venv .venv

# Activate it (Mac/Linux):

source .venv/bin/activate

# Activate it (Windows):

.venv\Scripts\activate

✅ Success looks like:

You'll see (.venv) appear at the start of your terminal line

7

Save the Download Script

Copy this entire script, save it as ytdownload.py:

import argparse
import sys
import yt_dlp

def download_4k_video(url, output_dir="downloads", browser=None):
    ydl_opts = {
        'format': 'bestvideo+bestaudio/best',
        'merge_output_format': 'mp4',
        'outtmpl': f'{output_dir}/%(title)s.%(ext)s',
        'noplaylist': True,
        'quiet': False,
        'prefer_ffmpeg': True,
        'keepvideo': False,
        'postprocessors': [{
            'key': 'FFmpegVideoRemuxer',
            'preferedformat': 'mp4',
        }],
        'postprocessor_args': ['-c', 'copy'],
        'progress_hooks': [lambda d: print(d['status']) if 'status' in d else None],
    }

    if browser:
        ydl_opts['cookiesfrombrowser'] = (browser,)
        print(f"[INFO] Using cookies from {browser} browser")
        print(f"[WARNING] Make sure you're logged into a BURNER account!")

    with yt_dlp.YoutubeDL(ydl_opts) as ydl:
        info = ydl.extract_info(url, download=True)
        print(f"\n✓ Downloaded: {info.get('title', 'Unknown')}")
        print(f"✓ Resolution: {info.get('width')}x{info.get('height')}")

if __name__ == "__main__":
    parser = argparse.ArgumentParser(
        description="Download YouTube video in high quality."
    )
    parser.add_argument("url", help="The YouTube video URL")
    parser.add_argument("--output_dir", default="downloads", help="Output directory")
    parser.add_argument(
        "--browser",
        choices=["chrome", "firefox", "safari", "edge", "brave"],
        help="Browser to extract cookies from (REQUIRED)"
    )
    args = parser.parse_args()

    if not args.browser:
        print("[ERROR] Please specify --browser option")
        print("Example: python ytdownload.py 'URL' --browser chrome")
        sys.exit(1)

    download_4k_video(args.url, output_dir=args.output_dir, browser=args.browser)

How to save the script:

  1. Select and copy all the code above
  2. On Mac: Open TextEdit (Applications → TextEdit)
  3. On Windows: Open Notepad (Start → Notepad)
  4. Paste the code
  5. Important: Go to Format → Make Plain Text (TextEdit only)
  6. Save as ytdownload.py in your youtube-downloads folder
8

Download a Video!

Before you run the command:

  1. Open your browser (Chrome, Safari, Firefox, etc.)
  2. Log into a BURNER YouTube account (not your main account!)
  3. Keep the browser open

Now run this command (replace the parts in caps):

python ytdownload.py "PASTE_YOUTUBE_URL_HERE" --browser YOUR_BROWSER

Example:

python ytdownload.py "https://www.youtube.com/watch?v=dQw4w9WgXcQ" --browser chrome

Replace YOUR_BROWSER with:

  • chrome - if using Google Chrome
  • safari - if using Safari (Mac)
  • firefox - if using Firefox
  • edge - if using Microsoft Edge
  • brave - if using Brave
9

Find Your Downloaded Video

Your video will be saved in:

youtube-downloads/downloads/

On Mac: Open Finder → Go menu → Home → youtube-downloads → downloads

On Windows: Open File Explorer → Navigate to C:\Users\YourName\youtube-downloads\downloads

Troubleshooting

❌ "command not found" error

The tool isn't installed. Go back and reinstall Python, yt-dlp, or ffmpeg (whichever command failed).

❌ "Permission denied" error

Try adding sudo before the command (Mac/Linux only):sudo pip3 install yt-dlp

❌ "Bot detection" or "Sign in to confirm you're not a bot"

Make sure you're logged into a YouTube account in your browser (use a burner account!) and the browser is open when running the command.

❌ Video downloaded but won't play

Try using VLC Media Player - it plays almost any video format. Download from videolan.org

Ready to turn your video into viral clips?

À propos de l'auteur

Nicolai Gaina

Nicolai Gaina

Ingénieur logiciel avec plus de 12 ans d'expérience professionnelle dans la région de la baie de San Francisco. Spécialisé dans le développement logiciel, la création de contenu et la croissance sur les réseaux sociaux, il excelle dans les stratégies de croissance basées sur les données, l'IA et les outils en ligne percutants pour les créateurs de contenu.

Suivre sur : LinkedIn