DEV Community

Cover image for How to send WhatsApp messages for free and reliably with only 3 lines of code? Python

How to send WhatsApp messages for free and reliably with only 3 lines of code? Python

Aahnik Daw on October 17, 2020

Wondering how to send WhatsApp messages using Python using only 3 lines of code? You have come to the right place! You can do so by using a simple...
Collapse
 
sankalpsriva profile image
sankalpsriva • Edited

I added the wrong path how and then keep getting the error of "Chromedriver not loaded"
How do I change the path so it can work again?
EDIT: I found the GitHub discussion of changing your set PATH but now I am getting an error about unicode truncation after I made it into a raw string I get a permisson error.

Collapse
 
aahnik profile image
Aahnik Daw
Collapse
 
chepi_deleon profile image
José Alfredo de León

I'm gettting the error: "ChromeDriver not loaded". Could you provide any help?

Collapse
 
aahnik profile image
Aahnik Daw

Please post the details in the discussion forum.

github.com/aahnik/wappdriver/discu...

Please provide additional details.

have you installed chrome driver ? the correct matching verison ?
have you entered the correct path when prompted ?

Collapse
 
anuradha profile image
Anuradha Fernando

Hi José,
Set the ChromeDriver path when you call the webdriver.Chrome.
eg:
browser = webdriver.Chrome('/home/user/Python/ChromeDriver/chromedriver')
browser.get('twitter.com')

Collapse
 
tranvytdt profile image
tranVyTDT

anyone have this error like me
Traceback (most recent call last):
File "test_whatsapp.py", line 1, in
from wappdriver import WhatsApp
File "/home/username/.local/lib/python3.8/site-packages/wappdriver/init.py", line 24, in
from .local import set_chrome_driver_path, update_selectors
File "/home/username/.local/lib/python3.8/site-packages/wappdriver/local.py", line 11, in
from verlat import latest
ImportError: cannot import name 'latest' from 'verlat' (/home/username/.local/lib/python3.8/site-packages/verlat/init.py)

Collapse
 
ag422 profile image
Ag422

Can we also send messages to groups or only to people?

Collapse
 
aahnik profile image
Aahnik Daw

you can send messages to groups also. just put the name of group, in the to parameter

Collapse
 
aahnik profile image
Aahnik Daw • Edited

You can send messages to Groups also. Just use the name of the group in the recipient's name.

Collapse
 
daksh777 profile image
Daksh P. Jain

Do we need to be logged in WhatsApp web for it to work? I didn't quite understand how it sends the message. Also, what about contacts saved as numbers only (no name but only phone number)?

Collapse
 
aahnik profile image
Aahnik Daw • Edited

Hi ! Thanks for asking. When you run the code shown, chrome will open whatsapp web. For the first time you need to scan QR code to login to whatsapp.

You can send only to saved contacts.

Otherwise whatsapp may block you for spamming.

For contacts saved only as phone number, it will work. Just put the phone number instead of name , in the to parameter of the send method

Collapse
 
daksh777 profile image
Daksh P. Jain

Amazing! Do we need to include the full number (with country code) like +1123456789 or only 123456789 will work?

Thread Thread
 
aahnik profile image
Aahnik Daw

exactly same as saved. Number must be saved

Collapse
 
lcheuk profile image
lcheuk

It doesn't support if the name contains space.

Collapse
 
aahnik profile image
Aahnik Daw

can you show a screen recording ? or terminal output ?
it is expected to work

Collapse
 
pooriabt profile image
pooriabt

hii aahnik
i check your githubs link (full documentation), but it links to same page, im looking for a way to send some pdf files to some different people.

Collapse
 
amaboula profile image
amaboula

Hello I have this error

cannot import name 'WhatsApp' from partially initialized module 'wappdriver' (most likely due to a circular import)

Collapse
 
aahnik profile image
Aahnik Daw

did you name your file wappdriver.py ? Dont do that. Learn more about imports.

And by the way, wappdriver is not more maintained. See the github repo for notice.

Some comments have been hidden by the post's author - find out more