简体   繁体   中英

how to send your long WhatsApp message as a single message instead of multiple messages

I am facing issue while sending a long message to whatsApp Web using selenium Python. My message is in UTF-8 formate. Below is the sample of the message.

સમરાદિત્ય ચરિત્ર ભવ – ૧ ભાગ – ૨૫

પ્રથમ ભવ:- ગુણસેન(રાજા) – અગ્નિશર્મા (પુરોહિત પુત્ર)

રાજમાર્ગ પરથી મહાજનોના ૧૦૮ રથોને રથમહેલ તરફ જતા જોઇને, નગરવાસી લોકો અનેક તર્ક-વિતર્ક કરવા લાગ્યા.

Also please find the code I have tried so far.

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys
import codecs
import time

#This code is to deal with the input files
grp_list_file = codecs.open('grp_list.txt','r','utf8')
grp_list_data = grp_list_file.read()
grp_list_split = grp_list_data.split('\n')
grp_list_len = len(grp_list_split)
grp_list_val_data = []

for i in range(grp_list_len):
    temp = grp_list_split[i]
    temp1 = temp.replace('\ufeff','')
    temp2 = temp1.replace('\r','')
    grp_list_val_data.append(temp2)
print('Input file processed successfully')


#This block deals with the input message file
msg_list_file = codecs.open('message.txt','r','utf-8')
msg_list_data = msg_list_file.read()
print('Message file input processed successfully')

#Keep this at here to avoid any future issues
grp_list_file.close()
msg_list_file.close()


#Open the whatsapp web
driver = webdriver.Firefox()
driver.get('https://web.whatsapp.com/')
input('Enter anyhing once the QR code has been scanned successfully')
act = ActionChains(driver)


#Let proceed with the sending message to all groups
for i in range(grp_list_len):
    name = grp_list_val_data[i]
    message = msg_list_data
    #Select the group
    user = driver.find_element_by_xpath('//span[@title = "{}"]'.format(name))
    user.click()
    msg_box = driver.find_element_by_class_name('_3u328')
#    msg_box.send_keys(Keys.SHIFT)
    act.send_keys(Keys.SHIFT,message).perform()
#    msg_box.send_keys(message)
#    act.key_up(Keys.SHIFT)
    send = driver.find_element_by_class_name('_3M-N-')
    time.sleep(10)
    send.click()
    print('Message sent successfully to : ',name)

Could anyone please help to send the entire text in single message instead of multiple message.

I found the way to solve the issue with help of copy paste idea. First I copied my data to clipboard and then pasted it to desired text box location.

Thank you very much for your time and help. :)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM