首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >微信批量加好友软件,模拟鼠标键盘自动加好友

微信批量加好友软件,模拟鼠标键盘自动加好友

原创
作者头像
亿达客RPA
发布于 2026-09-30 22:41:02
发布于 2026-09-30 22:41:02
130
举报

声明:仅用于学习参考使用测试用途,请勿用于违规场景

下面仅为Python PyAutoGUI 模拟鼠标键盘原理演示,仅用于学习亿达客 RPA 模拟操作逻辑,.RPA(机器人流程自动化)最基础的实现方式之一就是屏幕键鼠模拟,程序通过控制鼠标点击、键盘输入,像真人一样操作桌面软件。很多桌面自动化场景,都会使用 PyAutoGUI 这个 Python 库来完成基础的键鼠模拟。下载地址:https://www.wxrpa.com

技术原理介绍

PyAutoGUI 是 Python 生态的桌面自动化库,核心能力:

  • 获取屏幕坐标、移动鼠标、模拟点击
  • 模拟键盘输入、快捷键复制粘贴
  • 提供故障安全机制,鼠标移动到屏幕左上角可立刻终止脚本

本案例模拟的业务流程(仅学习): 读取 Excel 表格内数据 → 移动鼠标点击搜索框 → 粘贴目标账号回车搜索 → 点击添加好友按钮 → 填写备注、标签、自定义验证消息 → 提交好友申请。

环境依赖安装

代码语言:txt
复制
pip install pyautogui pandas openpyxl pyperclip
  • pyautogui:键鼠模拟核心库
  • pandas + openpyxl:读取 Excel 表格数据
  • pyperclip:剪贴板,解决特殊字符输入问题

完整演示代码

代码语言:txt
复制
import pyautogui
import pandas as pd
import pyperclip
import time

# ====================== 【配置区域,需要手动修改】 ======================
# Excel表格路径,表格字段:wx_id(微信号), remark(备注), tag(标签), verify_msg(验证消息)
EXCEL_PATH = "wx_add_list.xlsx"
# 操作间隔时间,单位秒,防止操作过快
DELAY = 3
# ========== 屏幕坐标,需要自己运行坐标获取代码,手动采集 ==========
SEARCH_BOX_X, SEARCH_BOX_Y = 500, 120
ADD_BTN_X, ADD_BTN_Y = 800, 350
VERIFY_INPUT_X, VERIFY_INPUT_Y = 600, 420
SEND_BTN_X, SEND_BTN_Y = 750, 500
REMARK_INPUT_X, REMARK_INPUT_Y = 600, 300
TAG_INPUT_X, TAG_INPUT_Y = 600, 340
# ======================================================================

# 安全机制:鼠标移动到屏幕左上角,立刻终止脚本
pyautogui.FAILSAFE = True
pyautogui.PAUSE = 1

def read_excel_data():
    """读取Excel表格中的待处理数据"""
    df = pd.read_excel(EXCEL_PATH)
    return df

def auto_add_contact(wx_id, remark, tag, verify_msg):
    """单条联系人自动化操作逻辑(原理演示)"""
    # 点击搜索框
    pyautogui.click(SEARCH_BOX_X, SEARCH_BOX_Y)
    time.sleep(DELAY)
    # 全选原有内容
    pyautogui.hotkey('ctrl', 'a')
    time.sleep(0.5)
    # 复制微信号到剪贴板,粘贴(解决中文输入异常)
    pyperclip.copy(wx_id)
    pyautogui.hotkey('ctrl', 'v')
    time.sleep(DELAY)
    # 回车执行搜索
    pyautogui.press('enter')
    time.sleep(DELAY)

    # 点击添加好友按钮
    pyautogui.click(ADD_BTN_X, ADD_BTN_Y)
    time.sleep(DELAY)

    # 填写备注
    pyautogui.click(REMARK_INPUT_X, REMARK_INPUT_Y)
    pyperclip.copy(remark)
    pyautogui.hotkey('ctrl', 'v')
    time.sleep(1)

    # 填写标签
    pyautogui.click(TAG_INPUT_X, TAG_INPUT_Y)
    pyperclip.copy(tag)
    pyautogui.hotkey('ctrl', 'v')
    time.sleep(1)

    # 填写验证消息
    pyautogui.click(VERIFY_INPUT_X, VERIFY_INPUT_Y)
    pyperclip.copy(verify_msg)
    pyautogui.hotkey('ctrl', 'v')
    time.sleep(DELAY)

    # 发送好友申请
    pyautogui.click(SEND_BTN_X, SEND_BTN_Y)
    time.sleep(DELAY + 2)

if __name__ == "__main__":
    print("程序将在5秒后启动,请提前切换到PC微信窗口!")
    time.sleep(5)
    data_df = read_excel_data()
    for index, row in data_df.iterrows():
        print(f"正在处理第{index+1}条数据:{row['wx_id']}")
        try:
            auto_add_contact(
                wx_id=str(row["wx_id"]),
                remark=str(row["remark"]),
                tag=str(row["tag"]),
                verify_msg=str(row["verify_msg"])
            )
        except Exception as e:
            print(f"处理失败,异常信息:{e}")
        time.sleep(DELAY)
    print("全部任务执行完成!")

坐标采集辅助代码

运行这段代码,将鼠标移动到对应按钮位置,按下回车,就可以打印屏幕坐标,填入上面的配置项:

代码语言:javascript
复制
import pyautogui
print("移动鼠标到目标位置,按回车获取坐标")
input()
print(pyautogui.position())

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

目录
  • 完整演示代码
  • 坐标采集辅助代码
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档