How to Build a Simple Auto-Login Bot with Python and Selenium – Hongkiat

Read Time:5 Minute, 6 Second


Automation is undoubtedly one of the coveted expertise a programmer can possess. Automation is often used for duties which can be repetitive, boring, time-consuming, or in any other case inefficient with out using a script.

With internet automation, you’ll be able to simply create a bot to carry out totally different duties on the net, as an illustration to watch competing resort charges throughout the Web and decide the very best worth.

Personally, I’ve all the time discovered logging into my e mail pretty repetitive and boring, so for the sake of a easy instance to get you guys began with internet automation, let’s implement an automated Python script to log in with a single click on to a Gmail account.

Gmail Login
Set up and Setup

On this tutorial we’re going to use the following instruments:

  1. Python programming language
  2. Google Chrome browser
  3. Selenium browser automation toolkit
  4. Chrome Driver internet driver for Chrome

For our program, we will likely be utilizing the Python programming language, particularly model 2.7.11. It’s essential that we set up a pretty new model of Python 2 as a result of it comes with PIP, which can enable us to put in third-party packages and frameworks that we might want to automate our scripts.

As soon as put in, restart your pc for the modifications to take impact. Use the command pip set up selenium so as to add the Selenium internet automation toolkit to Python. Selenium will enable us to programmatically scroll, copy textual content, fill kinds and click on buttons.

Install Selenium

Lastly obtain the Selenium Chrome Driver executable, which can open Google Chrome as wanted to carry out our automated duties. The Chrome Driver is solely a technique to open Google Chrome (which ought to already be put in) to entry customary browser operations programmatically.

Merely obtain the latest ZIP file from here, extract the chromedriver.exe executable, and place the executable in any listing. Make sure you make word of the place your executable is, as a result of we are going to want it as soon as we get began.

Beginning the Program

As aforementioned, we’ll be utilizing the Selenium internet automation framework to be able to log in programmatically. The primary order of enterprise is to import each module we’ll be needing from the Selenium Python library which we put in ealier with PIP.

Let’s open IDLE or one other code editor, create a brand new Python file with .py extension, and import the next modules:


 from selenium import webdriver
 from selenium.webdriver.frequent.by import By
 from selenium.webdriver.assist.ui import WebDriverWait
 from selenium.webdriver.assist import expected_conditions as EC

Subsequent, we’ll create two strings that symbolize our username and password for the e-mail account. Take note of capitalization, particularly in your password string.


 usernameStr="putYourUsernameHere"
 passwordStr="putYourPasswordHere"

Now that we now have the whole lot arrange to be able to begin the login course of, we have to truly instruct a browser window to open Google Chrome, and navigate to Gmail’s login web page.

In the event you haven’t completed so already, be certain your Python script is saved in the identical location because the chromedriver.exe executable we extracted earlier.


 browser = webdriver.Chrome()
 browser.get(('https://accounts.google.com/ServiceLogin?'
 'service=mail&proceed=https://mail.google'
 '.com/mail/#identifier'))
Discovering Our Aspect

We’ve efficiently gotten the browser to open Gmail, however now we have to discover the enter fields on the net web page, into which we are able to enter our username and password.

We are able to do that simply utilizing the built-in Chrome Developer Instruments. We solely must right-click on the enter fields, and choose the “Examine” menu.

Find Element in Developer Tools

Now it’s only a matter of utilizing HTML id attributes to search out the weather programmatically.

Within the code beneath, we’re merely looking for the username enter discipline by id, and filling it with the specified textual content. Then we’re looking for the Subsequent button which transitions with a fast animation earlier than prompting us for the password.

The send_keys() and click on() instructions do precisely as their names recommend — send_keys() simulates keypresses within the desired factor, and click on() simulates a mouse click on.


 # fill in username and hit the subsequent button
 username = browser.find_element_by_id('Electronic mail')
 username.send_keys(usernameStr)
 nextButton = browser.find_element_by_id('subsequent')
 nextButton.click on()

We are able to do the identical factor for the password enter discipline, in addition to for the Signal in button. Nonetheless, these two gadgets seem on the web page solely after an animated transition.

That stated, we want this system to wait a number of seconds earlier than resuming its seek for parts. For essentially the most half, this stage of code isn’t any totally different from the earlier one. We merely must instruct the browser to wait a most of 10 seconds earlier than finding the password entry.


 # anticipate transition then proceed to fill gadgets
 password = WebDriverWait(browser, 10).till(
 EC.presence_of_element_located((By.ID, 'Passwd')))
 password.send_keys(passwordStr)
 
 signInButton = browser.find_element_by_id('signIn')
 signInButton.click on()
Closing Phrases

You’ve simply completed making a bot that visits an online web page, enters your username and password, and efficiently signal you in, automating the entire course of to a single click on. I do know this was a easy demonstration, however the potentialities are limitless.

On that very same word, watch out of how you employ this ability. Some folks use bots and automatic scripts to enter sweepstakes hundreds of instances, utterly disregarding phrases and circumstances. Others use them for extra malicious intentions.

Simply be sure you use automation purposefully and thoroughly, as a result of it truly is a a lot wanted ability within the programming neighborhood!



Source link

Happy
Happy
0 %
Sad
Sad
0 %
Excited
Excited
0 %
Sleepy
Sleepy
0 %
Angry
Angry
0 %
Surprise
Surprise
0 %

Average Rating

5 Star
0%
4 Star
0%
3 Star
0%
2 Star
0%
1 Star
0%

Leave a Reply

Your email address will not be published.