Join's Google Meet links for you 😴
Project is made using Selenium
and Flask
. We open a chromium app on server where we can add, create, open tabs and set browser operations and everything.
Using Flask
as an interface to create our schedule subjects and timers (meets) make it easy to use and understand.
- Open terminal on your PC
- Clone the repo
https://github.com/Agniwald/easyMeet.git
- Go inside the project directory
- Create file
.env
file and add these lines:
MAIL=(your Google account email)
PASSWORD=(your Google account password)
DB_URI=(whatever db you are comfortable with)
APP_SECRET_KEY=(create your Flask secret key)
GOOGLE_CHROME_BIN=(path to your chrome binary. in my case - /usr/bin/google-chrome)
CHROMEDRIVER_PATH=(path to your chrome webdriver. in my case - /usr/local/bin/chromedriver)
As you can see, you should install Chrome binary and webdriver for selenium library - installation guide
- Install dependencies
pip3 install -r requirements.txt
- Start the application
gunicorn app:app -t 1200
Now the project has started on localhost:8000
Now when you visit the page you will see 4 tabs in navbar
- Home
- Google Login
- Logs
- Test
On the home page you can add your subject table for easy usage. Also, you can add timers on your meets. Set start time and end time - add whatever number of meets you want!
On the Google Login page you can start authorization if it failed on boot (check logs).
Also, application core provide functionality to "recover" your account by phone number or if captcha appeared!
To check success of authorization - click "Check" and go to Test
tab to see screenshot of myaccount.google.com
Pretty self-explanatory.
On this tab you will see all operations of application core. Check this tab to see Google login recover code!
- Python 3 should be installed
- Google Chrome with version 70+
On line 30
of core.py
file you can see line chrome_options.add_argument("--headless")
If you want to see bot automatically opening the page and filling login values and joining meet link then you can comment that line.
If you want to deploy your instance of app you need it to set it up properly.
The main problem on deployment is that after deployment it will be hosted on different IP and when bot tries to sign in Google will ask to login again with one time password
.
But application's core provide functionality to solve this problem. Check Test
tab to see what excatly Google wants from you (phone code/captcha/number confirmation) and set it in Google Login
tab.
For example, here's a guide on how to set up a project with Nginx + Gunicorn on AWS or similar services.