As mentioned on my GitHub profile, I am also a YouTube Content Strategist, Manager, and SEO Specialist. I found myself regularly uploading YouTube videos in bulk, scheduling them, and ensuring that everything from the titles to the descriptions and tags are perfect for SEO. To optimize my workflow and save time, I decided to put my Python programming skills to the test and created this tool. This allows me more free time to focus on creating more content and improving my strategies.
Mr-MYTer is an automated tool for bulk video uploads to YouTube.
Key features include:
- Automated video and thumbnail uploads
- Automated video title and description
- Batch processing
- Error handling and status updates
- Option to restart after completion
Using Selenium WebDriver, it simulates user actions in YouTube Studio, streamlining the upload process for content creators. This tool saves time for those who regularly upload multiple videos to YouTube.
- Python 3.10 or later
- Chrome Browser installed
- pip (Python package installer)
- Required Python packages:
- selenium
- python-dotenv
- webdriver-manager
- A .env file in the project root your
YOUTUBE_STUDIO_URL
set
-
Install Python 3.10 or later.
-
Install the required packages:
In Powershell:
pip install selenium python-dotenv webdriver-manager
Or
pip install -r requirements.txt
-
Create a .env file in the root of the project with the following:
see:
.example.env
YOUTUBE_STUDIO_URL="https://studio.youtube.com/channel/..your-channel-id.."
-
Add the all videos and thumbnails you want to upload to the
videos
folder.The folder should look like this:
youtube-uploader <- project root directory │ └── videos <- videos directory ├── video1.mp4 <- your video1 file ├── video1.jpg <- your thumbnail1 file ├── video2.mp4 <- your video2 file ├── video2.png <- your thumbnail2 file ├── video3.mp4 <- ... └── ... <- ...
-
Rename videos and their corresponding thumbnails with the same name of the title you want to give the YouTube video.
-
Create
.txt
files for video and name with the same name as the video titles. -
In each
.txt
file, write down keywords/key phrases that you would like your description to have.The
.txt
file should look like this:your keyword one, your keyword 2, your keyword 3, ...
7.2. On your YouTube studio, go to
settings
, thenupload defaults
and change the default description to something like this:In this video you will learn about KEYWORD. Watch the video till the end to find out KEYWORD. Did you learn KEYWORD? Share this video with someone who wants to see a video about KEYWORD. Do you want to see another video about KEYWORD? Did you enjoy watching TITLE?
Each "KEYWORD" and "TITLE" on your description will be replaced with a keyword from your
.txt
file and the title of the video respectively. -
Navigate to the root folder of the project and start Powershell.
-
Run the following command to start the script:
python .\src\main.py
- Starts Chrome with remote debugging enabled.
- Initializes the WebDriver and navigates to the YouTube Studio URL.
- Checks for video files in the specified folder.
- For each video file: a. Navigates to the YouTube Studio upload page. b. Clicks the "Create" button and selects "Upload videos". c. Uploads the video file. d. Renames the video with the filename (without extension). e. Updates the video description with your keywords. f. Uploads the thumbnail if a matching one is found. g. Waits for processing and prepares for the next video.
- After uploading all videos, asks the user if they want to exit or restart the process.
- If restarting, the script goes back to step 3.
- If exiting, the script closes the WebDriver and terminates.
Note: The script handles various exceptions and provides status updates throughout the process.
This will not include settings for your video uploads that you can set as default in settings > upload defaults.
Features to add:
-
Auto adding tags.
-
Auto setting monetization on.
-
Auto uploading the video with
schedule
visibility. -
Custom path for videos and thumbnails directory/folder.
This project is licensed under the MIT License. See the LICENSE file for more details.
Contributions are welcome! Please feel free to submit a PR.
📝 Let's Connect!