本文档介绍如何使用 Python 和 Selenium 库自动化 Whatsapp 消息的发送。该方法通过模拟用户在浏览器中的操作来实现,因此需要注意遵守 WhatsApp 的服务条款。本文提供详细的代码示例和步骤,帮助你了解如何设置环境、编写脚本以及发送消息。请务必谨慎使用,并确保你的行为符合相关法律法规。
使用 Selenium 自动化 WhatsApp 消息发送
本教程将指导你如何使用 Python 和 Selenium 库来自动化 WhatsApp 消息的发送。这种方法通过模拟用户在 Web 浏览器中的操作来实现,因此需要确保你了解并遵守 WhatsApp 的服务条款。
准备工作
-
安装必要的库:
立即学习“Python免费学习笔记(深入)”;
首先,你需要安装 Selenium 和 webdriver_manager。webdriver_manager 能够自动管理浏览器驱动程序,简化配置过程。在命令行中运行以下命令:
pip install selenium webdriver_manager
-
安装 Chrome 浏览器:
确保你的系统上安装了 Chrome 浏览器,因为我们将使用 Chrome 驱动程序来控制浏览器。
代码实现
以下是一个使用 Selenium 自动化发送 WhatsApp 消息的 Python 代码示例:
from selenium import webdriver from selenium.webdriver.common.keys import Keys from webdriver_manager.chrome import ChromeDriverManager import time def send_whatsapp_message(contact_name, message): """ 使用 WhatsApp Web 向指定联系人发送消息。 Args: contact_name (str): 联系人姓名或号码。 message (str): 要发送的消息内容。 """ driver = webdriver.Chrome(ChromeDriverManager().install()) driver.get("https://web.whatsapp.com/") input("Scan the QR code on the browser, then press Enter to continue...") try: # 定位搜索框 search_box = driver.find_element("xpath", "//div[contains(@class, 'copyable-text')][@contenteditable='true']") # 输入联系人姓名 search_box.send_keys(contact_name) time.sleep(2) # 等待联系人加载 # 选择联系人 search_box.send_keys(Keys.ENTER) # 定位消息输入框 message_box = driver.find_element("xpath", "//div[@contenteditable='true'][@data-tab='1']") # 输入并发送消息 message_box.send_keys(message) message_box.send_keys(Keys.ENTER) print(f"Message sent to {contact_name} successfully!") except Exception as e: print(f"Error: {str(e)}") finally: driver.quit() # 示例用法 contact_name = "John Doe" # 替换为你的联系人姓名 message = "Hello, this is a test message from my Python script!" send_whatsapp_message(contact_name, message)
代码解释
- 导入必要的库: selenium, webdriver_manager, time。
- send_whatsapp_message 函数:
- 使用 webdriver_manager 安装 Chrome 驱动程序并启动 Chrome 浏览器。
- 打开 WhatsApp Web (https://web.whatsapp.com/)。
- 暂停程序,等待用户扫描 QR 码并登录 WhatsApp Web。
- 使用 XPath 定位搜索框、消息输入框等元素。
- 输入联系人姓名,选择联系人,输入消息并发送。
- 处理异常情况并关闭浏览器。
使用步骤
- 运行代码: 运行上述 Python 脚本。
- 扫描 QR 码: 程序会打开 Chrome 浏览器并加载 WhatsApp Web。你需要使用手机上的 WhatsApp 扫描网页上的 QR 码进行登录。
- 等待消息发送: 登录成功后,程序会自动查找联系人,输入消息并发送。
注意事项
- XPath 定位: XPath 表达式可能因 WhatsApp Web 的更新而失效,需要根据实际情况进行调整。
- 延迟: 代码中使用了 time.sleep() 函数来等待页面加载和元素出现。根据网络状况和电脑性能,你可能需要调整延迟时间。
- 服务条款: 请务必遵守 WhatsApp 的服务条款,避免滥用自动化功能。
- 错误处理: 代码中包含了基本的错误处理,但建议根据实际需求进行更完善的错误处理。
- 隐私: 请注意保护你的隐私和联系人的信息,不要在未经允许的情况下发送消息。
总结
本教程介绍了如何使用 Python 和 Selenium 自动化 WhatsApp 消息的发送。虽然这种方法可以提高效率,但也需要谨慎使用,并遵守 WhatsApp 的服务条款。通过理解代码原理和注意事项,你可以根据自己的需求进行定制和优化。请始终牢记合规和道德准则,合理使用自动化工具。
python 浏览器 app 电脑 工具 ai webdriver Python chrome 并发 https 自动化