Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

GMail is blocking login via Automation (Selenium)

I am using selenium to automate a mail verification process in a web application. I have a script already in place to login to gmail and read an activation mail received on the account. The script was perfectly working till yesterday but today I am facing a problem.

Screenshot of issue

Additional Screenshot of issue Additional Screenshot of issue

Gmail is not allowing sign in if the browser is launched with selenium. Says,

You're using a browser that Google doesn't recognize or that's setup in a way that we don't support.

  • I have tried upgrading chromedriver version to 76.0.0 as I am using chrome version 76.0.3809.100(64 bit). (Previously used chromedriver 2.45) Still, the problem persists.
  • Verified that this issue occurs even if I use Firefox instead of Chrome for automation.
  • Verified that Javascript is enabled in the browser
  • Gmail is not asking for any OTP or recovery mail. It is simply blocking my attempt to login via automation. However I am able to login to the same account manually.

Software used: "webdriverio": "^4.14.1", "wdio-cucumber-framework": "^2.2.8"

Any help is appreciated.

like image 481
Balachander Avatar asked Aug 22 '19 06:08

Balachander


People also ask

Can we automate Gmail login using selenium?

We can automate the Gmail login process using Selenium webdriver in Java. To perform this task, first we have to launch the Gmail login page and locate the email, password and other elements with the findElement method and then perform actions on them.

Can we do automation on Gmail?

Automate Gmail Sequences & Drip CampaignsYou can also synchronize emails with Kanban boards and automatically apply shared Gmail labels. Gmelius stores all your templates in the “compose” window so you never need to keep a running list of follow-ups.


1 Answers

After some trial and error, found out that this issue happens only in a scenario when multiple gmail accounts have already been created from the same App/IP/Device. Google somehow is marking those accounts and blocks them if they are launched by automation frameworks/extensions.

Temporary Solutions:

  • Create a fresh GMail account using a different mobile number from another device (Not recommended).
  • We should be using workarounds like nodemailer zeolearn.com/magazine/sending-and-receiving-emails-using-nodejs (as mentioned by Rahul L as a suggestion)
  • Automate temporary mail providers like Guerilla Mail or 10 Minute Mail if you are worried about only receiving mails

My humble opinion is to entirely avoid automating the UI of third party Mail applications as you cannot predict how their UI and elements will change. They might block you from launching for security purposes and they have every right to do so!

like image 183
Balachander Avatar answered Sep 21 '22 12:09

Balachander