Course Sniper

Description: It has become increasingly difficult to enroll in courses at UCLA now that the school is not offering as many courses and the school has become so packed. This project will create a Course Sniper that will allow the user to choose a course and have the course be continuously watched and notify the user when the course is open.

Learning Objective: The main learning objective of this project is to be better familiarized with bash scripting as well as porting this script over to other languages and possibly platforms.

Useful Resources:


  • ability to choose a term, followed by subject, followed by course (data is gathered dynamically so the script doesn’t need to be updated with a new term)
  • scrapes the registrar for ID Number, Type, Sec, Days, Start, Stop, Building, Room, Res’t, #En, EnCp, #WL, WLCp, Status every 5 seconds
  • pop-up/email notification if there is an open/wait-listed course

To do:

  • print course name
  • change notification to if course data changes instead of if class is open
  • email user if a course is open
  • Port over to PHP/Rails


Testimonials for Fall 2011:

YOUR COURSE SNIPER IS AMAZING. im on the waitlist for CS144 now!! I FRIKKEN LOVEE YOUUUU ♥♥♥ – Angie

steven!!! 144 was open for 5 minutes cuz i got an email for every minute it was open! too bad i didnt have auto-sync data enabled on my phone at the time…. but your app works!!!! – Seliya

Thank you thank you thank you!!!!!!!!!!! :DDDD – Christine

If you would like to get involved, have any questions, or suggestions please comment below.

2 Replies to “Course Sniper”

  1. Hello! Are you still doing this? I am trying to enroll in the last class I need to finish my degree, but it’s already closed. Any help would be incredibly appreciated and I will pay you! Thanks!!

    1. Hi Emily! Sorry I didn’t see your comment until now. The course sniper was privately used by me for my friends. I hope you were able to find some other solution and that you got into your class!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.