发送消息时如何在WhatsApp中使用Selenium换行?

时间:2019-06-06 12:07:36

标签: python-3.x selenium whatsapp

消息发送功能:

template = {
    'other': 
             'Text.'
             'More Text.'
             'Much more text.'
}


def send_message(driver, answer):
    driver.find_element_by_xpath('XPATH').click()
    action = ActionChains(driver)
    action.send_keys(answer)
    action.send_keys(Keys.RETURN)
    action.perform()

根据从template收到的消息,采取必要的答案并将其作为send_message()的参数传递给answer。 如果您按原样发送消息,则在WhatsApp中它会出现在一行中:

Text.More text.Much more text.

如果您添加\n,则每行都会发送一条新消息,即:

screenshot of sent message

如何在一封邮件中发送带有换行符的文本?

2 个答案:

答案 0 :(得分:1)

解决了这个问题

def send_message(driver, answer):
    driver.find_element_by_xpath('XPATH').click()
    for line in answer.split('\n'):
        ActionChains(driver).send_keys(line).perform()
        ActionChains(driver).key_down(Keys.SHIFT).key_down(Keys.ENTER).key_up(Keys.SHIFT).key_up(Keys.ENTER).perform()
    ActionChains(driver).send_keys(Keys.RETURN).perform()

答案 1 :(得分:0)

您可以使用以下代码添加行。它工作正常,正在我的ERP中使用它。

from flask_socketio import SocketIO