|
1 | 1 | # Class Enroller |
2 | 2 |
|
3 | | -Old files/ Class scraper has multiple class functionality but i havent fixed the auto enroller for that. |
| 3 | +#### Get your chromedriver based on your operating system. <a>href="https://googlechromelabs.github.io/chrome-for-testing/" Here </a> |
4 | 4 |
|
5 | | -THIS one is barebones ull have to edit the python file to add ur api keys and asu username and passwd |
6 | 5 |
|
7 | | -IF you use mac change chromedrive.exe to the correct exec ** Download from chromium website |
| 6 | +<h1 align="center"> |
| 7 | + <br> |
| 8 | + <a href="https://github.com/Abhinav-ranish/ASU-Selenium-ClassEnroller"><img src="https://raw.githubusercontent.com/Abhinav-ranish/ASU-Autologin/main/asu.ico" alt="ASU" width="200"></a> |
| 9 | + <br> |
| 10 | + Class Enroller - ASU |
| 11 | + <br> |
| 12 | +</h1> |
| 13 | + |
| 14 | +<h4 align="center">An automated class enroller for Arizona State University. Build with selenium (python) <a href="https://www.python.org/" target="_blank">Python</a>.</h4> |
| 15 | + |
| 16 | +<p align="center"> |
| 17 | + <a href="https://www.paypal.me/aranish911"> |
| 18 | + <img src="https://img.shields.io/badge/$-donate-ff69b4.svg?maxAge=2592000&style=flat"> |
| 19 | + </a> |
| 20 | +</p> |
| 21 | + |
| 22 | +<p align="center"> |
| 23 | + <a href="#key-features">Key Features</a> • |
| 24 | + <a href="#how-to-use">How To Use</a> • |
| 25 | + <a href="#download">Download</a> • |
| 26 | + <a href="#credits">Credits</a> • |
| 27 | + <a href="#related">Related</a> • |
| 28 | + <a href="#license">License</a> |
| 29 | +</p> |
| 30 | + |
| 31 | +[](https://youtu.be/SxLpP7ES3-o) |
| 32 | + |
| 33 | +## Key Features |
| 34 | +* Cross-compatible (Mac, Unix, Windows) |
| 35 | +* Scrape Data from classsearch.asu.edu. |
| 36 | +* Checks Availability of classes -> saves the class as open and if Twilio is uncommented out sends a call to desired number |
| 37 | +* Duo Push (Passcode) - Will need a new OTP every re-run. To Bypass this you will have to turn off 2fa. (Or Look into Session Cache Stuff) |
| 38 | +* Autologins to your asu and enrolls you into the class. |
| 39 | +* If you wanna use it for Linux/Mac Autologin script is in /autologin/autoopener.py change the executable from .... .exe to python autologin//autoopener.py |
| 40 | +* Visit [AutoLogin](https://github.com/Abhinav-ranish/ASU-Autologin) for more documentation |
| 41 | + |
| 42 | +## How to Use |
| 43 | +To clone and run this application, you'll need [Git](https://git-scm.com) and [Python](https://www.python.org/) installed on your computer. From your command line: |
| 44 | + |
| 45 | +```bash |
| 46 | +# Clone this repository |
| 47 | +$ git clone https://github.com/Abhinav-ranish/ASU-ClassEnroller |
| 48 | + |
| 49 | +# Go into the repository |
| 50 | +$ cd ASU-ClassEnroller |
| 51 | + |
| 52 | +# Set up a virtual environment |
| 53 | +$ python -m venv env |
| 54 | + |
| 55 | +# Install dependencies |
| 56 | +$ pip install selenium twilio |
| 57 | + |
| 58 | +# Add your Twilio Config (Only if you want Call notification aswell) |
| 59 | +$ vim scraper.py |
| 60 | + |
| 61 | +# Add your ASU authentication details |
| 62 | +$ vim autoopenner.py |
| 63 | + |
| 64 | +# Run the app |
| 65 | +$ python scraper.py |
| 66 | +``` |
| 67 | + |
| 68 | +> **Note** |
| 69 | +> You will require a new Duo OTP every time you re-run. · |
| 70 | +> All your credentials should be entered in autoopener.py · |
| 71 | +
|
| 72 | + |
| 73 | + |
| 74 | +## For Enquiries @ aranish@asu.edu |
| 75 | + |
| 76 | +## Download |
| 77 | + |
| 78 | +Download the pre-build installer found in [Releases](https://github.com/Abhinav-ranish/Selenium-ClassEnroller/releases) |
| 79 | + |
| 80 | + |
| 81 | +## Credits |
| 82 | + |
| 83 | +This software uses the following open-source packages: |
| 84 | + |
| 85 | +- [Selenium](https://www.selenium.dev/documentation/) |
| 86 | +- [Python](https://www.python.org/downloads/) |
| 87 | + |
| 88 | +## Related |
| 89 | + |
| 90 | +[Auto Login](https://github.com/Abhinav-ranish/ASU-Autologin) - Python selenium script for auto-login ASU |
| 91 | + |
| 92 | +## Support |
| 93 | + |
| 94 | +<a href="https://paypal.me/aranish911" target="_blank"><img src="https://www.buymeacoffee.com/assets/img/custom_images/purple_img.png" alt="Buy Me A Coffee" style="height: 41px !important;width: 174px !important;box-shadow: 0px 3px 2px 0px rgba(190, 190, 190, 0.5) !important;-webkit-box-shadow: 0px 3px 2px 0px rgba(190, 190, 190, 0.5) !important;" ></a> |
| 95 | + |
| 96 | + |
| 97 | +## License |
| 98 | + |
| 99 | +MIT |
| 100 | +Old files/ Class scraper has multiple class functionality but i haven't fixed the auto enroller for that. |
| 101 | + |
| 102 | +--- |
| 103 | + |
| 104 | +> LinkdIn [abhinav_ranish](https://www.linkedin.com/in/abhinavranish/) · |
| 105 | +> GitHub [@abhinav-ranish](https://github.com/abhinav-ranish) · |
| 106 | +> Instagram [@abhinav.ranish](https://instagram.com/abhinav.ranish) |
8 | 107 |
|
9 | | -#### I won't be updating the Chrome driver.. Make sure ur Chrome browser and the Chrome driver are on the same version.. its currently on the latest. (31/3/2024) |
10 | 108 |
|
11 | | -### Feel free to fork @tag |
12 | 109 |
|
13 | 110 | ## Youtube Video - Outdated (Only has scraper) |
14 | 111 | [](https://youtu.be/Rb7f3m1Acos) |
0 commit comments