banner
约 1,800 字
6 分钟

Docker部署海鲜市场24小时商品价格监控平台

-
-
无标签

摘要

AI Goofish Monitor 是一款基于 Docker 的闲鱼价格监控工具,通过抓取、去重、AI筛选、推送四段链路实现全天候低价预警。它利用多模态 AI 模型结合图文判断商品价值,支持多账号轮询降低风控。部署在 NAS 上,适合不想时刻盯屏的捡漏党,但需注意合规使用及 AI 判断仅供参考。

前言

常在"海鲜市场"(闲鱼)蹲二手的朋友,大概都有过这种体验:看中一件东西,价格一直没到自己心理价位,只能时不时掏出 App 翻一下,生怕错过低价被别人秒走。手动蹲太累,还容易漏,于是就想找个能24 小时自动盯着价格、到价就提醒的工具。

今天介绍的 AI Goofish Monitor(ai-goofish-monitor) 就是干这个的:通过 Docker 一键部署到 NAS 上,全天候监控你关注商品的价格,定时把结果推送到手机,再配合 AI 用自然语言帮你过滤掉一堆垃圾信息,只把真正值得买的低价好货挑出来。我实际体验过一段时间,还挺有用的。项目地址:https://github.com/Usagi-org/ai-goofish-monitor

适用人群:经常在闲鱼淘货、想捡漏但又不想时刻盯屏的朋友;也适合做二手价格监控研究。注意要合规使用,仅监控自己关注的合法商品。

它到底怎么工作的:四段链路

在动手部署前,先把这个系统的工作链路讲清楚,这样后面配置每一样东西时你都知道"为什么需要它":

纯文本
① 抓取  →  ② 去重/存库  →  ③ AI 筛选  →  ④ 推送到手机
(关键词       (sqlite 记        (多模态模型       (邮件/企业微信/
  定时搜索)      价格历史)        看文案+看图)      TG/Server酱)

四个环节各自解决一个问题:

  • ① 抓取:按你设定的关键词和分类定时搜索,把当前在售商品的信息拉下来。这一步决定你能看到多少货

  • ② 去重 / 存库:同一件商品反复出现很正常(卖家改价重发、多个卖家挂同款),系统用 sqlite 记录,避免重复推送,同时攒下价格历史

  • ③ AI 筛选:这是它区别于"普通价格提醒脚本"的核心——用自然语言描述你的需求("只要 9 成新以上、无拆修、原装配件齐全"),让模型判断商品描述和图片是否符合。不合格的直接丢掉

  • ④ 推送:把通过筛选的商品推到你手机上,附上 AI 给的购买建议。

理解了这个链路,就能明白为什么下面有个配置项叫"必须配多模态模型"——因为第 ③ 步要看图。

部署方法

  1. 在 NAS 上把项目文件拉取下来并进入目录:

纯文本
git clone https://github.com/Usagi-org/ai-goofish-monitor && cd ai-goofish-monitor
  1. 修改 docker-compose 里的镜像地址。默认镜像可能拉取慢或被墙,下面的代码已经替换成国内加速源(南大 ghcr 代理),可以直接复制替换:

纯文本
services:
  app:
    image: ${APP_IMAGE:-ghcr.nju.edu.cn/usagi-org/ai-goofish:latest}
    container_name: ai-goofish-monitor-app
    pull_policy: always
    init: true
    ports:
      - "8000:8000"
    env_file:
      - .env
    environment:
      APP_DATABASE_FILE: /app/data/app.sqlite3
    volumes:
      - ./.env:/app/.env
      - ./data:/app/data
      - ./state:/app/state
      - ./config.json:/app/config.json
      - ./prompts:/app/prompts
      - ./jsonl:/app/jsonl
      - ./logs:/app/logs
      - ./images:/app/images
      - ./price_history:/app/price_history
    restart: unless-stopped

上面挂载了很多目录(data、logs、images、price_history 等),作用是让监控数据、日志、抓到的商品图都能持久化保存在 NAS 本地,容器重建不丢数据,不用去动它们,保持默认即可

顺便说下几个挂载目录各自的职责,出问题时好排查:

目录

装什么

什么时候会用到

data

sqlite 数据库

想看历史记录、想重置数据时

price_history

价格变化轨迹

判断"现在是不是真低价"

images

抓到的商品图

占空间最多,定期清理的对象

logs

运行日志

任务没跑起来时第一个看这里

prompts

AI 提示词模板

想微调 AI 筛选标准时改这里

images 是最需要关注的——监控几十个关键词跑一个月,这个目录可能攒到几个 GB,定期清理不会影响功能

  1. 把示例配置 .env.example 复制一份成 .env。相关配置项此时可以先不改,等会用 Web 界面配置更方便:

纯文本
cp .env.example .env
  1. 构建并启动:

纯文本
docker compose up -d

使用方法

  1. 浏览器访问 http://NAS的IP:8000,用默认管理员账号密码登录(admin / admin123,登录后记得改掉):

登录界面
  1. 添加海鲜市场账号:按页面提示安装配套浏览器扩展,用扩展抓取你的登录信息授权给系统。可以同时添加多个账号,多账号轮询能降低风控:

添加账号

多账号
  1. 添加消息推送渠道:系统支持多种推送方式(邮件、企业微信、Telegram、Server酱 等),选一个你常用的配置好,这样监控到低价能第一时间通知到你手机:

消息推送
  1. 添加 AI 模型:这个项目的核心卖点就是用 AI 帮你筛商品。注意——要开启图片识别(看图判断成色、是否翻新等),必须配一个多模态模型(支持视觉的),纯文本模型只能看文字描述:

配置AI模型
  1. 创建监控任务:把你关注的关键词、目标价、要盯的分类填进去:

创建任务
  1. 开启任务,可以设置定时轮询,也可以手动触发一次:

开启任务
  1. 查看结果:系统会列出监控到的商品,并给出 AI 生成的购买建议(价格是否划算、成色如何、值不值得入手),帮你快速决策:

监控结果与AI建议
  1. 想看系统运行情况,可以在后台日志里查看任务执行记录和报错信息,排查问题都靠它:

后台日志

多账号轮询为什么能降风控

这一步值得单独解释,因为很多人是看到"多账号"就随便加了两个,其实不清楚原理。

平台判断异常访问,主要看这几个信号:单账号的请求频率、访问时段规律、行为模式。监控脚本的固定间隔轮询恰好全踩在上面——比如「每 30 秒一次,从早 8 点到晚 12 点,只搜不聊不买」,这在风控看来就是明显的机器行为。

多账号轮询的思路是把请求分散到不同的账号上,让单个账号的频率降下来

纯文本
不用多账号:账号 A 每 30 秒搜 1 次   → 频率特征极明显
用多账号:  A / B / C 轮流,各 90 秒 1 次 → 单个账号频率降为 1/3

所以配置时有个原则:账号数量 × 轮询间隔,要保证单账号的请求频率落在"真人使用"的范围内。加账号但不改间隔,等于没加。

还要注意:多账号不是越多越好。每个账号都要从扩展里导出登录态,等于把多个账号的凭据存在同一台 NAS 上,一旦这台机器被访问到,影响面反而更大。两三个够用

关于合规与风险,必须说清楚

这类工具绕不开几个现实问题,写在这里供你判断:

  1. 登录态(Cookie)的敏感性:授权过程本质是把你的登录凭据交给这个系统。它存在你的 NAS 上,比交给第三方安全,但仍然建议——用于监控的账号,别用你交易记录最多、绑定最多的主号。

  2. 平台规则:自动化抓取大概率不符合平台的服务条款。频率越低、越接近真人行为,风险越小;狂刷式的监控除了账号风险,也可能给卖家带来困扰。请仅用于自己正当的购物比价。

  3. AI 判断不是保证:模型看图和文案给的建议,仅供参考。成色、是否翻新这类判断,卖家一张打光照片就能骗过模型。最终决策还是自己看实物、聊清楚再下单

  4. 不要用来做转卖囤货:脚本化扫货会挤占普通买家的机会,也不符合平台生态。工具的定位是"帮你看住自己想要的那件东西"。

使用感受与建议

我试用下来感觉还挺好用的,最省心的是不用自己盯着,到价自动推。唯一的要求是对 AI 模型的质量要求较高——模型越聪明,它对"垃圾信息"的过滤和对商品的判断就越准;如果用的模型偏弱,建议结果可能会比较泛。

几个实用小建议:

  • 监控任务别设得太频繁,适度轮询既能及时抓到低价,也能降低账号风控概率;

  • 商品描述里带上"成色、有无瑕疵"这类关键词,能让 AI 判断得更准;

  • 想低调运行又怕占资源的,可以把轮询间隔拉长,NAS 负载很小。

作者还提供了本地一键安装脚本,不想用 Docker 或没装 NAS 的朋友,可以直接在 Linux 服务器上跑官方脚本装,有需要可以自行尝试。

同类思路:把"定期抓取 + 到点提醒"用在别处

这套"定时抓取 → 条件筛选 → 推送通知"的模式其实很通用,不止二手比价。如果你关心的是另一类数字变化——比如自选股的行情感兴趣,同样的结构可以做出一个「自选股行情自动分析、定时推送到企业微信/飞书」的小系统,也是 Docker 一键部署,思路完全一致。

另外,如果这个工具的"多人在线协作看数据"让你觉得有意思,那自建一个旅行规划工具 TREK 是同一路思路——把 PC 上得靠第三方平台完成的协同,搬到自己的 NAS 上。

结尾

一句话总结:把"蹲闲鱼低价"这件事交给 24 小时在线的 NAS + AI,想捡漏又懒得刷屏的朋友值得一试。

不过还是那句话:工具帮你省的是"盯着看"的时间,不替你做判断。真到下单那一步,该问的要问、该验的要验。有问题欢迎在评论区交流。

END

相关文章

暂无相关文章