SkillAgentSearch skills...

WebRPA

一款功能强大的自动化工具,通过拖拽模块的方式快速构建自动化工作流,无需编写任何代码即可实现网页数据采集、表单填写、自动化测试等任务。 ⬇️⬇️ WebRPA技术交流群 ⬇️⬇️

Install / Use

/learn @pmh1314520/WebRPA

README

<div align="center"> <img src="png/logo.png" width="100" alt="Web RPA Logo"/> </div> <h1 align="center"> Web RPA - 网页机器人流程自动化工具 </h1> <p align="center"> <img src="https://img.shields.io/badge/版本-1.31.0-blue.svg" alt="版本"> <img src="https://img.shields.io/badge/模块数量-273个-brightgreen.svg" alt="模块数量"> <img src="https://img.shields.io/badge/协议-AGPL--3.0%20%2B%20商业授权-green.svg" alt="协议"> <img src="https://img.shields.io/badge/作者-青云制作__彭明航-orange.svg" alt="作者"> <img src="https://img.shields.io/badge/Python-3.13-blue.svg" alt="Python"> <img src="https://img.shields.io/badge/React-19-61dafb.svg" alt="React"> <img src="https://img.shields.io/badge/TypeScript-5-3178c6.svg" alt="TypeScript"> </p>

一款功能强大的可视化网页自动化工具(支持一定的Windows系统桌面自动化和Android系统自动化),通过拖拽模块的方式快速构建自动化工作流,无需编写代码即可实现网页数据采集、表单填写、自动化测试等任务。

【请到Releases中下载最新7z压缩包,最新源代码和运行环境都在里面,解压即可使用!😇】

✨ 功能特性

🎯 核心优势

  • 🚀 零代码开发:可视化拖拽,无需编程基础
  • 📦 开箱即用:内置Python、Node.js环境,一键启动
  • 🔧 模块丰富:273个功能模块,覆盖90%自动化场景
  • 🎨 界面美观:现代化UI设计,操作流畅,支持Mermaid流程图
  • ⚡ 性能强劲:基于FastAPI + React,响应迅速
  • 🔌 易于扩展:模块化架构,支持自定义开发
  • 📚 文档完善:18个分类的详细教学文档,覆盖所有273个模块
  • 🆓 完全免费:非商业使用完全免费,开源透明
  • 🔍 智能搜索:模块和教学文档支持中文、拼音、拼音首字母模糊搜索
  • 📊 可视化流程:内置Mermaid流程图,直观展示工作流逻辑
  • 💾 变量自动补全:创建模块时自动添加默认变量名到自动补全列表

🌐 浏览器自动化(31个模块)

  • 页面操作(9个):打开/关闭/刷新/前进/后退网页、脚本注入、iframe切换、标签页切换
  • 元素交互(9个):点击、悬停、输入文本、下拉选择、复选框、拖拽、滚动、弹窗、上传文件
  • 元素操作(2个):获取子元素、获取兄弟元素
  • 元素判断(2个):元素存在判断、元素可见判断(支持分支输出)
  • 数据采集(5个):提取元素信息、网页截图、保存图片、下载文件、表格数据提取
  • 等待控制(3个):固定等待、等待元素、等待图像
  • 高级操作(1个):网络抓包(监听HTTP/HTTPS请求)

📥 数据采集(6个模块)

  • 元素数据:提取页面元素文本、属性、HTML
  • 截图功能:网页截图、屏幕截图
  • 文件下载:下载文件、保存图片
  • 批量采集:支持相似元素批量提取
  • 表格提取:自动识别网页表格,提取为二维列表,支持导出Excel
  • 网络抓包:监听HTTP/HTTPS请求,获取接口数据

📊 数据处理(36个模块)

  • 变量系统(5个):全局变量、局部变量、变量引用{变量名}、JSON解析、Base64编解码、随机数、时间获取
  • 文本处理(8个):拼接、替换、分割、连接、截取、大小写转换、去空格、正则表达式提取
  • 列表操作(8个):添加、删除、获取、长度、遍历、排序、导出
  • 字典操作(8个):设置、获取、键列表、值列表、合并
  • 数据表格(8个):添加行/列、设置/读取单元格、删除行、清空、导出Excel、读取Excel
  • 数据库(7个):MySQL连接、查询、执行、插入、更新、删除、关闭连接

🗄️ 数据库操作(7个模块)

  • 连接管理:MySQL数据库连接、连接池管理
  • 数据查询:SELECT查询、条件筛选、多表关联
  • 数据操作:INSERT插入、UPDATE更新、DELETE删除
  • SQL执行:自定义SQL语句执行、事务支持
  • 结果处理:查询结果转换为列表/字典/表格
  • 连接关闭:释放数据库连接资源

📁 文件操作(11个模块)

  • 文件管理:复制、移动、删除、重命名文件
  • 文件夹操作:创建文件夹、重命名文件夹、获取文件列表
  • 文件读写:读取文本文件、写入文本文件
  • 文件信息:获取文件大小、修改时间、扩展名
  • 文件检查:检查文件/文件夹是否存在
  • 批量操作:支持通配符匹配、批量处理

🎬 媒体处理(41个模块,基于FFmpeg)

  • 格式工厂(6个):图片/视频/音频格式互转、视频转音频、视频转GIF、批量格式转换
  • 视频编辑(10个):格式转换、压缩、裁剪、旋转、倍速、分辨率调整、截取帧、添加字幕、合并、M3U8下载
  • 音频编辑(3个):提取音频、调节音量、音频转文字(Whisper)
  • 图像编辑(17个):缩放、裁剪、旋转、翻转、模糊、锐化、亮度、对比度、色彩平衡、添加文字、拼接、缩略图、滤镜、去色、圆角、去背景
  • 图像工具(5个):添加水印、获取信息、格式转换、二维码生成/解码
  • 摄像头:拍照、录像(非阻塞式)
  • 进度显示:实时显示处理进度

📄 PDF处理(16个模块)

  • 格式转换:PDF转图片、图片转PDF、PDF转Word(高保真,仅供非商业使用)
  • 文档操作:合并、拆分、插入页面、重排页面、删除页面、旋转页面
  • 内容提取:提取文本、提取图片、获取文档信息
  • 安全加密:PDF加密、PDF解密
  • 文档优化:添加水印、压缩PDF
  • 批量处理:支持批量转换和处理
  • ⚠️ 许可证说明:PDF转Word功能使用 pdf2docx(GPL v3),仅供非商业使用

📝 文档转换(13个模块,基于Pandoc)

  • Markdown转换:Markdown → HTML/PDF/Word/EPUB
  • Word转换:Word → Markdown/HTML
  • HTML转换:HTML → Markdown/Word
  • 学术文档:LaTeX → PDF、reStructuredText → HTML、Org-mode → HTML
  • 电子书:Markdown ↔ EPUB
  • 通用转换:支持30+种文档格式互转(docx、odt、rtf、tex、rst、org等)
  • 样式保留:支持CSS样式、参考文档模板
  • 批量转换:支持批量文档格式转换

🖼️ 图像处理(20个模块,基于Pillow)

  • 基础操作(4个):图像缩放、图像裁剪、图像旋转、图像翻转
  • 图像增强(4个):图像模糊、图像锐化、亮度调整、对比度调整
  • 色彩处理(3个):色彩平衡、图片去色、简单去背景
  • 格式转换(1个):支持PNG/JPEG/BMP/GIF/TIFF/WEBP/HEIC等格式互转
  • 高级功能(5个):图像添加文字、图像拼接、生成缩略图、图片圆角化、图像滤镜
  • 信息获取(1个):获取图像尺寸、格式、EXIF元数据等
  • 图像压缩(1个):压缩图像文件大小
  • 图像工具(1个):添加水印
  • 专业滤镜:10种内置滤镜效果(浮雕、边缘增强、轮廓、细节、平滑等)
  • 批量处理:支持批量图像处理和格式转换

🔀 流程控制(6个模块)

  • 条件判断:if-else逻辑、多种比较运算符(等于、大于、小于、包含等)
  • 循环控制:次数循环、条件循环、列表遍历
  • 循环跳转:跳出循环(break)、跳过当前循环(continue)
  • 子流程:工作流复用、模块化设计

⚡ 触发器系统(11个模块)

  • 网络触发:Webhook触发器(HTTP请求触发)、API触发器(轮询接口)
  • 时间触发:定时触发器(支持Cron表达式、间隔触发、指定时间)
  • 文件触发:文件监控触发器(监控文件/文件夹变化)
  • 邮件触发:邮件触发器(监控邮箱,收到邮件时触发)
  • 输入触发:热键触发器(全局热键监听)
  • 鼠标触发:鼠标触发器(监听点击、滚动、移动、手势事件)
  • 视觉触发:图像触发器(检测屏幕图像)、人脸触发器(人脸识别)
  • 音频触发:声音触发器(监听系统音频输出)
  • 网页触发:子元素变化触发器(监控网页元素变化)

🤖 AI 能力(11个模块)

  • AI对话:支持OpenAI、智谱、Deepseek、通义千问、Gemini、Azure等多家AI服务商
  • AI视觉:图像识别、图像理解、视觉问答
  • AI爬虫:自然语言描述提取数据、自适应网页结构变化、智能数据清洗
  • AI定位:AI元素选择器(自然语言描述定位元素)
  • 人脸识别:人脸检测、人脸比对、人脸特征提取
  • OCR识别:图片文字识别、支持80+语言、手写体识别
  • 验证码破解:OCR文字验证码、滑块验证码自动处理
  • 语音识别:音频转文字、支持多语言
  • 语音合成:文字转语音(TTS)、自定义语速音调

🔔 消息通知与交互(9个模块)

  • 日志系统:多级别日志(DEBUG/INFO/WARNING/ERROR)、日志导出(TXT/JSON/CSV)
  • 系统通知:Windows右下角通知、自定义通知内容
  • 音频提示:播放提示音、播放音乐(支持播放器控制)
  • 视频播放:播放视频(支持播放器控制、暂停/继续/停止)
  • 图片查看:查看图片(支持缩放/旋转/下载)
  • 语音播报:TTS文字转语音、自定义语速
  • 用户输入:弹窗输入(支持文本/数字/密码/多行文本等多种模式)
  • 邮件发送:发送邮件、支持附件、HTML格式

🖥️ 系统操作(20个模块)

  • 真实鼠标:真实鼠标点击/移动/拖拽/滚动(绕过部分反爬)
  • 真实键盘:真实键盘输入、模拟按键组合(Ctrl+C、Alt+Tab等)
  • 宏录制器:录制并回放鼠标键盘操作、支持循环播放
  • 剪贴板:读写剪贴板(支持文本和图片)
  • 图像识别:点击图像、悬停图像、拖拽图像(基于图像识别)
  • 文字识别:点击文字、悬停文字(基于OCR识别)
  • 系统命令:执行CMD命令、PowerShell脚本
  • 窗口管理:窗口聚焦、窗口置顶、获取窗口信息
  • 系统控制:关机、重启、锁屏、注销
  • 鼠标位置:获取当前鼠标坐标

🛠️ 实用工具(14个模块)

  • 文件对比:文件哈希对比、文件差异对比、文件夹哈希对比、文件夹差异对比
  • 加密编码:MD5加密、SHA加密、URL编解码、随机密码生成器
  • 格式转换:RGB转HSV、RGB转CMYK、HEX转CMYK、时间戳转换器
  • 其他工具:UUID生成器、打印机调用

🔄 格式工厂(6个模块)

  • 格式转换:图片格式转换、视频格式转换、音频格式转换
  • 特殊转换:视频转音频、视频转GIF
  • 批量处理:批量格式转换(支持文件夹批量处理)

🛠️ 辅助功能(16个模块)

  • 脚本执行:自定义JavaScript脚本、Python脚本(支持内置Python3.13和本地环境)
  • 网络请求:HTTP/HTTPS请求、支持GET/POST/PUT/DELETE等方法
  • 网络抓包:监听网络请求、获取请求响应数据
  • 网络共享:局域网文件/文件夹共享、支持密码保护
  • 屏幕共享:局域网实时屏幕投屏、支持多设备同时观看
  • 二维码:二维码生成、二维码解码
  • 随机数:生成随机数、随机字符串
  • 时间获取:获取当前时间、时间格式化
  • 模块搜索:支持拼音、拼音首字母、中英文模糊搜索
  • 模块收藏:收藏常用模块、自定义排序
  • 分组备注:工作流分组、添加备注节点
  • 子流程:工作流模块化、复用工作流片段

💬 社交自动化(10个模块)

  • QQ自动化:发送消息/图片/文件、获取好友/群列表、等待消息触发
  • 微信自动化:发送消息/文件(基于企业微信API)

📱 手机自动化(22个模块)

  • 触摸操作(5个):点击、滑动、长按、输入文本(自动切换ADBKeyboard输入法)、按键模拟
  • 屏幕操作(3个):截图、启动/停止镜像投屏(scrcpy)
  • 应用管理(4个):安装、启动、停止、卸载应用
  • 文件传输(2个):推送文件到手机、从手机拉取文件
  • 视觉识别(4个):图像识别点击、文字识别点击、等待图像出现、图像存在判断
  • 系统设置(2个):设置音量、设置屏幕亮度
  • 剪贴板操作(2个):读取/写入手机剪贴板(自动处理Clipper应用)

🖼️ 界面预览

工作流编辑器采用可视化拖拽设计,左侧模块列表,中间画布区域,右侧配置面板,底部日志/数据/变量面板等









🚀 快速开始

环境要求

  • Windows 10/11(本项目仅支持Windows系统使用)
  • 项目自带 Python 3.13 和 Node.js(无需额外安装)

启动方式

在Releases中下载最新版7z压缩包,之后解压出来,直接双击其中的 双击启动WebRPA本地服务.bat 即可快速启动本项目:

  • 后端服务:http://localhost:8000 (默认端口,可在 WebRPAConfig.json 中配置)
  • 前端服务:http://localhost:5173 (默认端口,可在 WebRPAConfig.json 中配置)

配置文件

项目根目录的 WebRPAConfig.json 文件可以自定义服务端口和主机地址:

{
  "backend": {
    "host": "0.0.0.0",
    "port": 8000,
    "reload": false
  },
  "frontend": {
    "host": "0.0.0.0",
    "port": 5173
  },
  "frameworkHub": {
    "host": "0.0.0.0",
    "port": 3000
  }
}

配置说明:

  • host: 服务监听地址(0.0.0.0 允许局域网访问,127.0.0.1 仅本机访问)
  • port: 服务端口号(可自定义,避免端口冲突)
  • reload: 后端热重载(开发模式可设为 true,生产环境建议 false

修改配置后重启服务即可生效。

注意事项:

  • 如果配置的端口已被其他程序占用,服务将无法启动并提示端口冲突
  • 请确保配置的端口未被占用,或修改为其他可用端口
  • Windows 系统可使用 netstat -ano | findstr :端口号 命令查看端口占用情况
  • 所有启动脚本(BAT 和 VBS)都会自动读取配置文件中的端口设置
  • 使用 VBS 无窗口启动时,关闭服务请使用对应的"关闭WebRPA(无终端弹窗).vbs"脚本,确保所有进程正确关闭

开发模式

如需修改代码进行开发:

# 后端
cd backend
../Python313/python.exe -m pip install -r requirements.txt
../Python313/python.exe run.py

# 前端
cd frontend
../nodejs/npm install
../nodejs/npm run dev

📁 项目结构

WebRPA/
├── backend/                 # 后端服务 (Python FastAPI)
│   ├── app/
│   │   ├── api/            # API 路由(浏览器、系统、触发器等)
│   │   ├── executors/      # 模块执行器(260个模块的核心逻辑)
│   │   ├── models/         # 数据模型(工作流、变量、配置等)
│   │   └── services/       # 核心服务(浏览器管理、任务调度等)
│   ├── data/               # 数据文件(AI模型、配置等)
│   ├── uploads/            # 上传文件临时存储
│   ├── ffmpeg.exe          # 媒体处理工具
│   ├── ffprobe.exe         # 媒体信息工具
│   ├── pandoc.exe          # 文档转换工具
│   ├── m3u8.exe            # M3U8视频下载工具
│   ├── requirements.txt    # Python依赖列表
│   └── run.py              # 后端启动入口
├── frontend/               # 前端界面 (React + TypeScript)
│   ├── src/
│   │   ├── components/     # UI 组件(工作流编辑器、配置面板等)
│   │   ├── store/          # 状态管理(Zustand)
│   │   ├── services/       # API服务、WebSocket通信
│   │   ├── types/          # TypeScript类型定义
│   │   └── lib/            # 工具函数(拼音搜索、工具类等)
│   ├── public/             # 静态资源
│   ├── package.json        # 前端依赖配置
│   └── vite.config.ts      # Vite构建配置
├── frameworkHub/           # 工作流市场服务 (Node.js + Express)
│   ├── src/
│   │   ├── routes/         # API路由(工作流上传、下载、搜索)
│   │   ├── middleware/     # 中间件(认证、日志等)
│   │   └── utils/          # 工具函数
│   ├── data/               # 工作流数据存储(SQLite)
│   ├── package.json        # Node.js依赖配置
│   └── ecosystem.config.cjs # PM2进程配置
├── Python313/              # 内置 Python 3.13 环境
│   ├── Lib/                # Python标准库
│   ├── Scripts/            # Python可执行脚本
│   └── python.exe          # Python解释器
├── nodejs/                 # 内置 Node.js 20 环境
│   ├── node_modules/       # 全局npm包
│   └── node.exe            # Node.js运行时
├── NapCat/                 # QQ机器人服务(NapCat框架)
├── workflows/              # 本地工作流存储目录
├── png/                    # README展示图片
├── LICENSE                 # 开源协议(AGPL-3.0 + 商业授权)
├── README.md               # 项目说明文档
└── 双击启动WebRPA本地服务.bat  # 一键启动脚本

📖 使用说明

项目内置完整的教学文档,点击工具栏的「教学文档」按钮即可查看。

基本操作

  1. 创建工作流:从左侧模块列表拖拽模块到画布
  2. 连接模块:从模块底部拖出连线到下一个模块顶部
  3. 配置模块:点击模块,在右侧面板配置参数
  4. 使用变量:在输入框中使用 {变量名} 引用变量
  5. 运行工作流:点击工具栏的运行按钮
  6. 查看结果:在底部面板查看日志、数据、变量

文档功能

  • 📚 18个分类的详细教学文档,覆盖所有260个模块
  • 🔍 三级标题搜索:搜索结果精确到三级标题(###),快速定位具体内容
  • 🎨 关键词高亮:搜索关键词在文档中自动高亮显示,方便查看
  • 🔖 保持搜索状态:切换文档时保持搜索和高亮,方便对比查看
  • 📊 Mermaid流程图:内置精美的流程图,直观展示工作流逻辑
  • 📝 丰富示例:每个模块都有详细的配置说明和代码示例
  • 💡 最佳实践:提供工作流设计模式和优化建议
  • 🎯 快速上手:从基础到高级,循序渐进的学习路

Related Skills

View on GitHub
GitHub Stars1.5k
CategoryDevelopment
Updated6h ago
Forks139

Languages

Python

Security Score

85/100

Audited on Mar 25, 2026

No findings