使用PyWhatKit.sendwhatmsg_to_group发送WhatsApp消息如何实现同消息内换行
问题根本原因
PyWhatKit的sendwhatmsg_to_group方法底层默认通过模拟键盘输入写入消息,普通\n、\r\n会被识别为直接按下回车键,触发消息发送,因此会把内容拆成多条独立消息。
可行解决方案
方法1:使用Unicode行分隔符实现软换行
将消息中的普通换行符替换为Unicode行分隔符\u2028,该字符会被WhatsApp Web输入框识别为Shift+Enter等效的软换行,不会触发消息发送,无需修改原有调用逻辑。
示例代码:
import pywhatkit as kit # 构造带软换行的消息内容 msg = "Hello\u2028World" # 调用原方法发送即可,参数按你原有逻辑填写即可 kit.sendwhatmsg_to_group("你的群组ID", msg, 15, 30)
方法2:手动控制输入过程适配软换行
如果方法1在你的环境下不生效,可以关闭接口的自动发送配置,手动控制输入和换行操作:
示例代码:
import pywhatkit as kit import pyautogui import time # 调用接口拉起对应群组的WhatsApp Web聊天窗口,关闭自动发送 kit.sendwhatmsg_to_group("你的群组ID", "", 15, 30, tab_close=False, wait_time=15) # 等待输入框加载就绪 time.sleep(2) # 输入第一行内容 pyautogui.typewrite("Hello") # 模拟Shift+Enter实现软换行 pyautogui.hotkey("shift", "enter") # 输入第二行内容 pyautogui.typewrite("World") # 手动回车发送整条消息 pyautogui.press("enter")
内容的提问来源于stack exchange,提问作者luizbarcelos
相关产品推荐
相关产品推荐

