Price Monitoring and Email Alert System for Udemy Courses
A Python automation tool that scrapes Udemy course prices daily and fires an email alert the moment a tracked course goes on sale — so you never miss a discount.
The Problem
Udemy runs frequent flash sales that can drop course prices by 80–90%, but catching them requires either constant manual checking or pure luck. For learners tracking multiple courses across different categories, that's an unrealistic ask.
This project automates the entire process — scraping prices on a schedule, comparing them against a target threshold, and sending an immediate email notification when a course goes on sale.
How It Works
Web Scraping
BeautifulSoup and Requests are used to scrape current prices from Udemy course pages. The scraper handles dynamic price elements and currency formatting to extract a clean numerical value.
Price Monitoring
Scraped prices are compared against a user-defined target price threshold stored in a configuration file. Users can track multiple courses simultaneously, each with its own target price.
Email Alert System
When a price drops at or below the target, Python's smtplib sends an automated email alert containing the course name, current price, and a direct link to purchase — with no manual intervention required.
Scheduled Execution
The script runs on a daily schedule using a task scheduler, ensuring prices are checked consistently without the user needing to manually trigger a run.
Explore the Project
Browse the full code and setup instructions on GitHub.