/  Technology   /  Whatsapp using Python!

Whatsapp using Python!

Developer’s can automate the browser’s activity with a very smart package in python called Selenium. We can make use of whatsapp-web through the browser by using this.

 

Requirements

 

We require three basic things to get things fulfill: Selenium.

Install selenium using pip by running the below command on your terminal −

 

$pip install selenium

 

  • Chrome/firefox or any other webdriver.

As I using chrome webdriver, below is a link to download chrome webdriver as per your os.

Create Whatsapp account.

 

Below code is an example to send whatsapp message using python to specific contacts.

 

Example

 

from selenium importwebdriver
from selenium.webdriver.support.uiimportWebDriverWait 
from selenium.webdriver.supportimportexpected_conditions as EC 
from selenium.webdriver.common.keysimportKeys 
from selenium.webdriver.common.byimportBy 
import time 
import sys
#Replace below path with the absolute path of the \ 
#chromedriver in your computer 
driver =webdriver.Chrome(r'c:\users\rajesh\Desktop\chromedriver') 
driver.get("https://web.whatsapp.com/") 
#time.sleep() 
wait =WebDriverWait(driver,600) 
#Replace 'My Bsnl' with the name of your friend or group name 
target ='"My Bsnl"' 
#Replace the below string with your own message 
string=sys.argv[1] 
x_arg='//span[contains(@title,'+ target +')]' 
group_title=wait.until(EC.presence_of_element_located 
((By.XPATH,x_arg))) 
print(group_title) 
print("Wait for few seconds") 
group_title.click() 
message =driver.find_elements_by_xpath('//*[@id="main"]/footer/div[1]/div[2]/div/div[2]')[0] 
message.send_keys(string) 
sendbutton=driver.find_elements_by_xpath('//*[@id="main"]/footer/div[1]/div[3]/button')[0] 
sendbutton.click() 
driver.close()

 

Run the above scripts on command prompt by passing message as argument to the whatsapp contact−

 

>python whatsppPython.py "Hello" 

DevTools listening on 
ws://127.0.0.1:12954/devtools/browser/a5bb04bd-66a3-4002-999f-6a0824f591da 
<selenium.webdriver.remote.webelement.WebElement(session="83e7034b9a6f6b49e9e422e655f270d3", element="0.30994636046479007-1")> 
after wait 
….
…..

 

As shown below the chrome browser will open with screen something like −

 

Whatsapp using Python

 

 

On your mobile device, Choose whatsapp web from the top bar in whatsapp. On the screen, scan the QR code that appears.

There we can see the message is send to a specific contact (“My Bsnl”) in our case.

 

Whatsapp using Python

Leave a comment