DEV Community

Cover image for CourseTime Analyzer: Python + Selenium + GUI Project for Tracking YouTube Course Time
Saami abbas Khan
Saami abbas Khan

Posted on

CourseTime Analyzer: Python + Selenium + GUI Project for Tracking YouTube Course Time

Ever wondered how long it will take to finish that YouTube course playlist you just found? Instead of manually checking each video, I built a small Python project called CourseTime Analyzer 🚀.

This tool automatically searches YouTube for a course playlist, fetches all video durations, and calculates the total study time — all packed in a simple Tkinter GUI.


🔥 Why I Built This

Whenever I started a YouTube course, I always wanted to know “How much total time will this take?” Sure, YouTube shows individual durations, but for playlists with 50+ videos, calculating by hand is painful.

So I automated it with Python + Selenium and wrapped it in a clean GUI using Tkinter.

👉 To be honest, this was a time-pass project. I wasn’t in the mood to continue my actual work (learning more about Softmax Regression 😅), so I coded this as a fun escape.


⚙️ Features

  • 🔍 Search YouTube for any course playlist
  • 📺 Fetch playlist title and creator details
  • ⏱️ Calculate total video duration in hours
  • 🎥 Show video count and display durations (first 15 listed, rest summarized)
  • 🔗 Clickable playlist link directly inside GUI
  • 🖼️ Clean interface with background image
  • 🖥️ Supports GUI mode (graphics.py) and CLI mode (main.py)

🧩 Modularized Approach

The project is structured to keep things clean and reusable:

  • main.py → Handles the core mechanism (YouTube scraping & analysis via Selenium).
  • graphics.py → A wrapper around main.py that provides a Tkinter-based GUI.

You can run main.py independently in CLI mode — the GUI is just an additional layer.


🚀 GitHub Repository

All the code is open-source and available here:

👉 CourseTime Analyzer on GitHub


💬 Feedback

Comments are open! Feel free to suggest improvements, criticize the approach, or even fork the repo and make it better. This was just a fun side project, so I’d love to see how others take it further. 🚀


Top comments (0)

Some comments may only be visible to logged-in visitors. Sign in to view all comments.