You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修复基于Selenium的WhatsApp Web自动@好友失效脚本

解决WhatsApp Web批量@指定好友的问题

原脚本没法完成批量@的核心问题是:WhatsApp Web的@提醒需要选中联系人选项才会生效,直接输入@加名字只是普通文本,不会触发@通知;另外原脚本的ActionChains操作存在累积重复的问题。

下面是修改后的完整脚本,关键改动已标注注释:

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time

# Brave浏览器路径,根据自身实际路径调整
brave_path = "/Applications/Brave Browser.app/Contents/MacOS/Brave Browser"
# ChromeDriver路径
chromedriver_path = "/usr/local/bin/chromedriver"

# 配置浏览器选项
options = webdriver.ChromeOptions()
options.binary_location = brave_path

# 启动浏览器
driver = webdriver.Chrome(service=Service(chromedriver_path), options=options)
driver.get("https://web.whatsapp.com")

# 等待手动登录
input("登录WhatsApp Web后按回车继续...")

# 等待搜索框加载并定位
wait = WebDriverWait(driver, 30)
search_box = wait.until(EC.presence_of_element_located((By.XPATH, '//div[@contenteditable="true"][@data-tab="3"]')))

# 搜索目标群聊
search_box.click()
search_box.send_keys("Group Name")  # 替换成你的群聊名称
search_box.send_keys(Keys.ENTER)

# 等待消息输入框加载
message_box = wait.until(EC.visibility_of_element_located((By.XPATH, '//div[@contenteditable="true"][@data-tab="1"]')))
time.sleep(2)

# 批量@操作核心逻辑
for _ in range(100):
    # 点击输入框确保激活状态
    message_box.click()
    # 输入@和好友名字
    message_box.send_keys("@John")  # 替换成要@的好友昵称
    # 给页面一点加载联系人选项的时间
    time.sleep(0.5)
    # 按向下箭头选中第一个匹配的联系人
    message_box.send_keys(Keys.DOWN)
    # 确认选中该联系人,生成有效@标签
    message_box.send_keys(Keys.ENTER)
    # 换行,暂不发送消息
    message_box.send_keys(Keys.SHIFT + Keys.ENTER)

# 最后发送所有@内容
message_box.send_keys(Keys.ENTER)

# 关闭浏览器
driver.quit()

关键改动说明:

  • 去掉了易出问题的ActionChains,直接操作消息输入框元素,避免操作累积
  • 增加输入@名→按向下箭头选联系人→按回车确认的流程,确保生成WhatsWeb可识别的有效@标签
  • 保留必要的短延迟,适配Web页面的加载速度

注意:替换代码中的Group Name和@John为实际群聊名称和好友昵称;若存在重名好友,可增加Keys.DOWN的次数来选中目标联系人。

内容的提问来源于stack exchange,提问作者RoooooKie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 08:17:02