Skip to content

Download YouTube videos with ease! πŸŽ₯ Features a sleek UI, yt-dlp integration, and Docker support. Transcribe, translate, & convert videos to text/Markdown effortlessly

Notifications You must be signed in to change notification settings

sachnaror/YouTube_to_Blog_Convertor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

2 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Youtube Video Download - to - Text-Conversion πŸŽ₯πŸ” 

Header

Who needs boring URLs when you can have your videos wrapped up in style? This project, powered by Flask and a sprinkle of magic from yt-dlp, delivers a sleek interface for downloading YouTube videos (and other supported platforms). Your downloaded treasures land right in the cozy folder ./downloads get converted into Texts. You can then push this file into blog / articles, as you want to process it ahead.


πŸ’» Getting Started: Pre-flight Checklist

Before you dive in, make sure you have:

  • Python 3.12+ (We don’t accept dinosaurs)
  • pip (Because Python packages don’t install themselves)
  • Docker (Optional: if you want to make your life extra smooth)

πŸš€ Installation and Running the Show

1. Running Locally (a.k.a. Old School)

  1. Grab the code like it’s hot:

    git clone https://github.com/sachnaror/Youtube_Video_Downloader.git
    cd flask-youtube-downloader
  2. Set up your private Python fortress:

    python3 -m venv env
    source env/bin/activate
  3. Stock up on the essentials:

    pip install -r requirements.txt
  4. Hit the launch button:

    python run.py
  5. Behold the glory: Open your browser and point it to http://localhost:5000.


2. Running with Docker Compose (a.k.a. Fancy Pants Mode)

  1. Prepare yourself with Docker and Docker Compose installed.

  2. Pull the code (yes, same as above, keep up):

    git clone https://github.com/sachnaror/Youtube_Video_Downloader.git
    cd flask-youtube-downloader
  3. Let Docker do its thing:

    docker compose up --build
  4. And voilΓ : Open http://localhost:5000 and bask in the beauty of instant video downloads.


πŸ“¦ Features Galore

  • Paste and Go: Simply paste your video URL, hit the button, and enjoy the magic.
  • Auto-download Brilliance: No complicated clicksβ€”your video lands safely in ./downloads.
  • User-Friendly Interface: Designed for humans, not robots (though they’ll probably like it too).

πŸ”§ Tech Ingredients

  • Flask: The cool uncle of Python web frameworks.
  • yt-dlp: Your trusty sidekick for video fetching.
  • HTML, CSS, JS: A dash of webby goodness for the front-end.
  • Docker: Keeping everything tidy and portable.

Directory Structure

β”œβ”€β”€ flask_youtube_downloader/
β”‚   β”œβ”€β”€ run.py
β”‚   β”œβ”€β”€ requirements.txt
β”‚   β”œβ”€β”€ Dockerfile
β”‚   β”œβ”€β”€ README.md
β”‚   β”œβ”€β”€ docker-compose.yml
β”‚   β”œβ”€β”€ video_to_markdown.py
β”‚   └── screenshots/
β”‚   β”œβ”€β”€ app/
β”‚   β”‚   β”œβ”€β”€ utils.py
β”‚   β”‚   └── routes.py
β”‚   β”‚   β”œβ”€β”€ static/
β”‚   β”‚   β”‚   β”œβ”€β”€ favicon.ico
β”‚   β”‚   β”‚   β”œβ”€β”€ scripts.js
β”‚   β”‚   β”‚   └── style.css
β”‚   β”‚   β”œβ”€β”€ templates/
β”‚   β”‚   β”‚   β”œβ”€β”€ index.html
β”‚   β”‚   β”‚   └── add_video.html
β”‚   β”œβ”€β”€ downloads/
β”‚   β”‚   β”œβ”€β”€ Medical Imaging with AI!.wav_chunk1.wav
β”‚   β”‚   β”œβ”€β”€ Medical Imaging with AI!.wav_chunk0.wav
β”‚   β”‚   β”œβ”€β”€ Medical Imaging with AI!.webm
β”‚   β”‚   β”œβ”€β”€ Medical Imaging with AI!.wav_chunk2.wav
β”‚   β”‚   β”œβ”€β”€ Medical Imaging with AI!.wav_chunk3.wav
β”‚   β”‚   β”œβ”€β”€ Medical Imaging with AI!.wav
β”‚   β”‚   └── Medical Imaging with AI!.txt

πŸ”§ Common Issues and Solutions

Error:

python run.py
 * Serving Flask app 'app'
 * Debug mode: off

Address already in use

Port 5000 is in use by another program. Either identify and stop that program, or start the server with a different port.
On macOS, try disabling the 'AirPlay Receiver' service from System Preferences -> General -> AirDrop & Handoff.

Solution:

  1. Identify the conflicting process: Open a terminal and run:

    lsof -i :5000

    This command shows you which process is using port 5000.

  2. Stop the process using port 5000: Note the process ID (PID) from the previous step, then run:

    kill -9 <PID>

    This will free up the port so Flask can use it.

  3. Choose a different port (if needed): If stopping the process isn’t possible, you can run Flask on another port:

    python run.py --port 5001
  4. Disable macOS services (if applicable):

    If you’re on macOS, the AirPlay Receiver service might be using port 5000.

    • Go to System Preferences β†’ General β†’ AirDrop & Handoff.
    • Turn off AirPlay Receiver and retry running your Flask app.

πŸ“© Contact

Name Details
πŸ‘¨β€πŸ’» Developer Sachin Arora
πŸ“§ Email schnaror@gmail.com
πŸ“ Location Noida, India
πŸ—‚ GitHub github.com/sachnaror
🌐 Website https://about.me/sachin-arora
πŸ“± WhatsApp WhatsApp Me
🎦 YouTube youtube.com/@sachnaror4841/videos
πŸ—΄ Twitter twitter.com/sachinhep
✍️ Medium medium.com/@schnaror

Need help, got feedback, or just want to say hi? Reach out to me here:

Now, go forth and enjoy downloading videos with a touch of wit! πŸ˜„

About

Download YouTube videos with ease! πŸŽ₯ Features a sleek UI, yt-dlp integration, and Docker support. Transcribe, translate, & convert videos to text/Markdown effortlessly

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published