源码系统概览
文章正文
闲鱼超级管家是一款面向闲鱼卖家的自动化运营源码,基于开源项目 xianyu-auto-reply 二次开发而来。
它在后台持续监听闲鱼消息通道,自动完成关键词回复、AI 智能议价、订单同步与自动发货等重复操作,把卖家从海量咨询中解放出来。
整套系统由 FastAPI 后端与 React 前端组成,数据落盘到本地 SQLite,配合 Playwright 浏览器自动化完成登录态维护与滑块验证处理。
本文基于源码实际目录与核心模块梳理其架构、能力边界与部署要点,供二次开发与学习研究参考。
源码简介
源码根目录以 Start.py 作为统一启动入口,负责数据库迁移、Playwright 浏览器自检安装以及前端自动构建,并在后台线程拉起 FastAPI 服务(默认端口 8080)。
核心自动化逻辑集中在 XianyuAutoAsync.py,它通过 WebSocket 连接闲鱼消息网关,接收买家咨询并触发回复与订单流程,是整套系统的大脑。
账号体系由 cookie_manager.py 管理,支持扫码登录、密码登录与手动 Cookie 录入,可同时挂载多个闲鱼账号并独立启停。
持久化层 db_manager.py 封装 SQLite 操作,存储用户、账号、订单、卡券、关键词与 AI 配置等数据,主库文件 xianyu_data.db 在启动时被迁移到 data 目录。
前端提供两套界面:frontend 为新版 React 19 与 Vite 仪表盘,frontend_backup 为 React 18 加 TypeScript 加 Tailwind 的完整后台,构建产物输出到 static 目录由后端直接托管。
整体上看,这是一个功能完整的私域客服自动化源码,模块拆分清晰、注释较全,适合作为电商客服机器人的学习样本。
适用场景
个人闲鱼卖家需要 7 乘 24 小时自动应答商品咨询、库存与发货问题时,可用本源码替代人工值守。
二手电商团队运营多个闲鱼账号、希望集中管理回复话术与发货规则时,多账号与卡券管理模块能显著降低重复劳动。
需要 AI 辅助议价的场景,可接入兼容 OpenAI 的接口,按自定义折扣规则自动与买家磋商价格。
教学与逆向研究场景下,本项目对闲鱼消息协议、签名与滑块验证的处理方式具有较高参考价值。
需要注意,自动化回复与发货属于第三方平台敏感操作,仅建议在自用与学习范围内使用。
功能亮点
智能回复:支持关键词精确匹配、商品专属话术与默认回复兜底,命中即回。
AI 议价:内置 ai_reply_engine.py,可调用大模型按折扣规则自动还价,并支持自定义系统提示词。
自动发货:提供卡券管理与发货规则,支持多规格商品、延时发货与「仅改状态 / 完整发货」两种模式。
订单中心:order_status_handler.py 与 order_status_query_playwright.py 基于 Playwright 实时拉取订单,支持批量刷新、单条同步与状态更新。
多账号:cookie_manager.py 支持扫码、密码、Cookie 三种登录方式,账号可独立启用、暂停与备注。
验证处理:utils 下的 slider_patch、xianyu_slider_stealth 与远程控制接口用于应对闲鱼滑块验证,提升自动化成功率。
管理后台:React 仪表盘提供工作台统计、账号概览、关键词、卡券、发货规则与系统设置等页面。
技术架构与部署指南
| 维度 | 本套源码 | 同类通用方案 |
|---|---|---|
| 技术栈 | 前端:React 18 / TypeScript / Vite / Tailwind CSS / Framer Moti | 依具体方案选型,需自行搭建与维护 |
| 部署方式 | 第一步,安装 Python 3.11 或以上版本并创建虚拟环境,执行 pip install -r requiremen | 多托管于第三方平台或订阅云服务 |
| 功能侧重 | 智能回复:支持关键词精确匹配、商品专属话术与默认回复兜底,命中即回。 | 功能通用,定制深度有限 |
| 数据归属 | 数据自持,部署在自有服务器,不出站 | 数据通常留存于服务商侧 |
| 成本模式 | 获取后自主部署,无持续授权费用 | 通常按订阅或调用量计费 |
技术栈与运行环境
前端:React 18 / TypeScript / Vite / Tailwind CSS / Framer Motion / Zustand / React Router
后端:FastAPI / Python 3.11+ / Uvicorn / WebSocket / Asyncio / Pydantic v2
数据库:SQLite(主库 xianyu_data.db,启动时迁移至 data 目录)
运行环境:Windows 或 Linux;需安装 Chrome 或 Chromium 并 playwright install chromium;前端构建需 Node.js 18+
其他依赖:Playwright、DrissionPage、PyExecJS、blackboxprotobuf、PyJWT、passlib[bcrypt]、openai、pandas、Pillow、qrcode
安装与部署提示
第一步,安装 Python 3.11 或以上版本并创建虚拟环境,执行 pip install -r requirements.txt 安装后端依赖。
第二步,运行 playwright install chromium(Linux 还需 playwright install-deps chromium)准备浏览器内核。
第三步,进入 frontend 或 frontend_backup 目录,执行 pnpm install 与 pnpm run build,将产物输出到 static 目录。
第四步,执行 python Start.py 启动服务,后端默认监听 http://0.0.0.0:8080,首次访问 /register 创建管理员账号。
第五步,在后台添加闲鱼账号(扫码或录入 Cookie),配置关键词与 AI 议价,系统即开始自动监听与回复。
生产部署可用项目内置的 Dockerfile 与 docker-compose 编排,或通过 Nginx 反代 static 与 API;注意 DrissionPage 依赖本机 Chrome 处理滑块。
截图与演示说明
工作台 Dashboard(frontend/components/Dashboard.tsx):展示数据统计卡片、快捷操作与账号概览,是登录后的首页。
订单管理 Orders(frontend_backup/src/pages/orders/Orders.tsx 与 OrderList.tsx):以表格呈现订单,支持侧边详情、批量刷新与单条同步、删除。
账号管理 Accounts(frontend_backup/src/pages/accounts/):以卡片网格展示各闲鱼账号,可切换启用、暂停与 AI 议价状态。
关键词与话术 Keywords(frontend_backup/src/pages/keywords/):按账号维护关键词命中规则与商品专属回复。
卡券与发货规则 Cards 与 Delivery(frontend_backup/src/pages/cards、delivery):配置卡券内容与自动发货匹配规则。
滑块验证远程控制台 captcha_control.html 配合 /api/captcha/ws:在需要人工介入时实时回传截图并接收鼠标轨迹完成验证。
登录与初始化页 /login、/register、/init:提供管理员注册、扫码登录与默认密码检测,对应 reply_server.py 中的认证路由。
常见问题
问:启动后访问页面白屏或提示静态资源 404 怎么办?
答:说明前端尚未构建或构建产物未输出到 static 目录。请进入 frontend 或 frontend_backup 执行 pnpm install 与 pnpm run build,确认 static/index.html 存在后重启 Start.py。
问:提示缺少 Chrome 或滑块验证一直失败?
答:本项目的浏览器自动化依赖 Playwright 与 DrissionPage,需先 playwright install chromium 并保证本机有 Chrome 或 Chromium;Start.py 会在启动时尝试自动安装浏览器。
问:如何接入自己的 AI 议价模型?
答:在后台「系统设置 / AI 回复」中填写兼容 OpenAI 的接口地址与密钥,并配置折扣规则与系统提示词,ai_reply_engine.py 会按配置调用模型生成回复。
问:多账号的 Cookie 与数据保存在哪里?
答:账号 Cookie 与订单、卡券等数据均存储在本地 SQLite 主库 xianyu_data.db(位于 data 目录),首次启动会自动从根目录迁移。
安全风险提示
本源码经深度扫描未发现 eval / shell_exec / gzinflate 类恶意执行后门,但存在以下需关注的硬编码与远程控制信号,部署前请逐项处置。
路径:utils/geetest/geetest_config.py
类型:硬编码凭据
证据:极验 CAPTCHA_ID 与 PRIVATE_KEY 写死为示例值 a30cdbb466e9349385762477cb2c7df6 与 6f70322308eb29ae0d85516a14a32d2c,仅可通过环境变量覆盖。
建议:生产环境务必通过 GEETEST_CAPTCHA_ID 与 GEETEST_PRIVATE_KEY 注入自有密钥,不要沿用仓库内置示例值。
路径:api_captcha_remote.py、utils/captcha_remote_control.py
类型:远程滑块验证控制
证据:提供 /api/captcha/ws WebSocket 接口,实时回传浏览器截图并接收远程鼠标事件以人工拖动滑块,后端默认绑定 0.0.0.0。
建议:仅在本地或受信任内网使用,避免将 0.0.0.0 暴露公网;如需远程协助请增加鉴权与访问限制。
路径:global_config.yml、config.py
类型:第三方平台自动化合规风险
证据:项目通过闲鱼 WebSocket 与 Web 接口模拟登录、监听消息并自动回复发货,属于第三方平台自动化工具,可能违反平台服务条款。
建议:仅用于学习与自用研究,商用或批量运营前请确认平台规则与相关法律风险。
特别提示:本源码未检测恶意执行后门,但上述安全与合规信号请在部署前逐项处置;下载后请务必进行安全审计后再使用!
下载说明
源码仅供学习研究、测试部署和二次开发参考,商用前请自行确认授权、版权和安全风险。
本项目涉及闲鱼账号登录、消息监听与自动回复等平台敏感能力,请严格遵守闲鱼平台服务条款,仅在本人账号与自用范围内使用,切勿用于批量营销或规避平台限制。
压缩包已上传至百度网盘,提取码为 8888;下载解压后请先按上文「安装与部署提示」准备 Python 与 Node.js 环境再启动。
使用过程中如遇账号风控或验证异常,请优先排查浏览器环境与 Cookie 有效性,并始终在隔离环境中运行以避免影响主账号。

