Selenium script that runs headless (no GUI environment required). Auto-accepts prospective members on SoDA's SunDevilSync (Campus Labs Engage) Organization.
- Google Chrome
- ChromeDriver
- Python 3
- selenium
- python-dotenv
Google Chrome and ChromeDriver versions need to match
Only tested with WSL2/Ubuntu and Ubuntu 20.04 (LTS), these instructions should work for any Debian-based OS.
Chrome can be installed with:
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo apt install ./google-chrome-stable_current_amd64.deb
ChromeDriver setup (not necessary as it will be installed automatically if not detected, just improves load time slightly):
# Move chromedriver into PATH
sudo mv chromedriver /usr/local/bin
# Make it executable
sudo chmod +x /usr/local/bin/chromedriver
You can optionally put your login credentials in a .env file in the same directory as the script:
username=bgood
password=P@s5w0rd
Obviously, don't do this on a machine other people might have access to.
python3 engage-roster-approver.py
Add
-v
arg for debug messages (e.g. when page refreshes are occurring)
Logs are written to approved_members.log