2.4 KiB
GoogleMeetBot
A bot to automatically join Google Meet meetings at the correct time
How it works
The bot automates a FireFox session using Python, Selenium and the Geckdriver.
It joins the programmed google meetings automatically, with microphone and webcam disabled.
It uses the schedule python module to automatically access and close meetings at the given time, it can only join one meeting at the time
Normally Google Accounts are not allowed to be logged in when using an automated browser, and this bot is no exception.
The procedure described in Using your account is used to bypass this protection mechanism
Using your account
This login procedure is needed in order to bypass Google not allowing automated browsers to log in into accounts.
Preparation:
- First of all install Mozilla FireFox from https://www.mozilla.org/en-US/firefox/download/thanks/.
- Download and install the Geckdriver for your OS from Mozilla's GitHub repo https://github.com/mozilla/geckodriver/releases.
- If you're using Linux, your package manager may have a package for that, so check that.
- Replace FIREFOX_DVD_DIR in utils.py with the path to the GeckoDriver executable you just installed.
Log in into your Google Account:
- Open FireFox and go to about:profiles
- Click Create a New Profile>Next name it whatever you want then click Finish
- Search for the profile you just created in the list below, copy the Root Directory and paste it into FIREFOX_PROFILE into utils.py
- Now FireFox will have made the profile you just created the default one, so set the default profile back to what it was before
- Go the the profile you just created and click Launch profile in new browser. This will open a new FireFox window using your profile.
- In the new FireFox window just appeared, head over to gmail.com and log in into your Google account.
- Once logged in, the profile is ready to be used in this bot
Dependencies
All python deps are listed in requirements.txt, just run
pip install -r requirements.txt
Add your own meetings
To add your own meetings into meetings.py, adding another scheduleMeeting line like the one already present. You can add as many as you want, but remember that this bot does not support joining multiple meetings at the same time