使用pywhatkit发送WhatsApp消息如何实现换行和表情符号正常发送?
pywhatkit发送带换行、表情的WhatsApp消息解决方案
核心问题说明
你遇到的原始字符串直接展示的问题,来自两个核心原因:
- 普通
\n换行符不符合pywhatkit调用网页端WhatsApp的传参规则,无法被识别为换行操作 - 文本形式的表情符号(如
:-))需要接收方WhatsApp开启文本转表情配置才能转换,直接传Unicode emoji兼容性更高
修复步骤
1. 修正基础语法错误
你提供的示例代码中字符串缺少闭合单引号,首先补全语法:
# 错误写法 msg = 'text :-) \n new line :-) # 正确写法 msg = 'text :-) \n new line :-)'
2. 解决换行不生效问题
将普通\n替换为\r\n即可被WhatsApp识别为换行,旧版本pywhatkit可以用URL编码的换行符%0A:
# 适配绝大多数版本的换行写法 msg = 'text :-)\r\nnew line :-)' # 旧版本适配写法 msg = 'text :-)%0Anew line :-)'
3. 解决表情显示问题
直接在字符串中输入Unicode emoji,不需要使用文本表情符号,可保证所有接收端正常显示:
msg = 'text 😊\r\nnew line 😊'
4. 完整可运行代码示例
import pywhatkit # 替换为目标号码,格式为「国家码+手机号」,例如中国手机号格式为+8613xxxxxxxxx TARGET_NUMBER = "+8613xxxxxxxxx" msg = "第一行消息内容 😊\r\n第二行消息内容 😊\r\n第三行消息内容 😊" pywhatkit.sendwhatmsg_instantly(TARGET_NUMBER, msg, 5, False, 5)
其他注意事项
- 运行代码前请确认网页版WhatsApp已完成扫码登录,浏览器无弹窗拦截
- 建议升级到最新版pywhatkit避免已知bug,升级命令:
pip install --upgrade pywhatkit
内容的提问来源于stack exchange,提问作者Giulio
相关产品推荐
相关产品推荐

