
用代码管理价格追踪PriceBuddy REST API与CLI命令完整参考【免费下载链接】pricebuddyA self hostable app that tracks prices and sends you notifications when prices match your preferences项目地址: https://gitcode.com/gh_mirrors/pr/pricebuddyPriceBuddy是一款开源、可自托管的价格追踪应用它自动抓取商品在不同商店的价格并在价格达到你的目标时发送通知。除了网页界面PriceBuddy 还提供内置 REST API和一套CLI 命令行工具让你用代码批量管理产品、商店和标签编写自动化脚本甚至把价格数据接入 AI 智能体。本文是面向新手的完整参考如何生成 API Token、调用哪些核心接口、如何用 CLI 命令做降价分析和脚本化监控。为什么用 API 和 CLI 管理价格追踪手动在网页上逐个添加产品只适合小规模使用。当你要做这些事时接口和命令行更高效批量导入商品和商店配置编写脚本定期拉取价格数据喂给自己的报表系统或 AI 智能体本地分析价格历史最低价、降幅、是否该出手能力探测通过client-config端点了解当前实例支持哪些特性官方说明可参考 docs/docs/api.md 和 docs/docs/cli.md。第一步生成 API Token 完成认证所有 API 调用都需要认证PriceBuddy 使用 Laravel Sanctum 的个人访问令牌登录 PriceBuddy点击右上角用户菜单→API tokens创建 Token 时勾选需要的权限如产品读写、元数据提取等Token 只在生成时的弹窗中显示一次务必立即保存权限定义可以在 app/Enums/ApiAbility.php 中查看例如meta-extraction:extract、client-config:read等。 提示API 的交互式文档部署在/docs/api路径下可以直接在线调试接口、查看请求/响应格式甚至导出 OpenAPI 规范。核心 REST API 端点速查标准 CRUD 端点产品、商店、标签都支持标准的增删改查资源端点产品列表/创建GET /api/products、POST /api/products产品详情/更新/删除GET/PUT/DELETE /api/products/{id}商店GET /api/stores等按域名筛选用filter[domain]标签GET/POST /api/tags等其中产品详情支持?includeinsights返回完整的价格洞察数据历史最低价、交易评分、百分位、目标进度等数据来自自动刷新的缓存请求开销很低。按页面 URL 查找产品实用技巧GET /api/products?filter[url]商品页URL会返回正在追踪该页面的所有产品。匹配做了规范化协议、www.前缀、尾部斜杠、大小写和utm_*等跟踪参数都会被忽略但?variant这类标识商品的参数仍然有效。配合current_url参数还能在price_cache中标记你当前正在浏览的那个报价。Meta 提取不落地抓取标题、价格、图片POST /api/meta-extraction可以从任意商品 URL 提取title、price、image不写入数据库非常适合先看看能不能抓到再决定追踪的场景。它还支持按 URL 域名自动匹配商店的抓取策略或传入自定义store配置做试运行heal: true时启用 AI 自愈常规抓取失败后由 AI 推断新策略耗时更长显式开启请求受时间预算保护且失败不会让请求报错——始终返回 200 并在healing字段说明结果该功能源码见 app/Http/Controllers/Api/MetaExtractionController.php。客户端能力配置GET /api/client-config返回当前实例支持的特性开关capabilities、上限参数limits如元提取超时秒数和应用版本。第三方客户端应该探测而不是硬编码假设这样跨实例兼容性最好。CLI给你的 PriceBuddy 实例加个命令行伴侣PriceBuddy 官方 CLI 用 Go 编写给脚本和 AI 智能体提供结构化访问能力。安装后只需两个环境变量export PRICEBUDDY_BASE_URLhttps://pricebuddy.example.com/api export PRICEBUDDY_API_TOKENpb_your_token_here pricebuddy doctor # 验证配置、凭据和连通性也可以运行pricebuddy pricebuddy-auth login --email userexample.com --password ...走登录流程。配置文件位于~/.config/pricebuddy/config.toml。快速上手五个最常用命令pricebuddy sync # 把产品/商店/标签同步到本地 SQLite 镜像 pricebuddy deals --agent # 列出已跌破通知阈值的产品JSON pricebuddy history 1 # 查看 1 号产品的价格曲线含 min/max/均价/趋势 pricebuddy drops --days 7 # 报告最近 7 天降价的产品 pricebuddy watch --json # 收藏夹产品距离触发价的远近排序--agent模式输出紧凑 JSON、无交互提示专为智能体调用设计--select id,title,current_price可只取需要的字段--dry-run预览写入操作而不实际发送。为脚本设计的细节退出码区分场景0成功、2用法错误、3未找到、4认证错误、7限流、10配置错误支持product-sources search-all ipad在已配置的商品源中搜索新链接meta-extract url可在追踪前预览 URL 能抓到的内容还内置 MCP 服务pricebuddy-mcp可以接入 Claude Desktop 等 AI 客户端让 AI 直接问答你的价格数据服务器端 artisan 命令运维和定时任务在服务器终端里PriceBuddy 自带一组 artisan 命令主要用于定时任务和初始化。命令定义集中在 app/Console/Commands/ 目录命令作用php artisan buddy:fetch-due抓取所有到期的产品报价配合调度器php artisan buddy:fetch-all立即抓取全部产品报价php artisan buddy:create-stores {country}按国家批量创建商店all表示全部国家php artisan buddy:build-search-research {product_name}为指定产品构建搜索研究数据php artisan buddy:regenerate-price-cache重建价格缓存php artisan urls:renormalize重新规范化 URLs 表php artisan user:assign-role {email}指定用户角色php artisan buddy:init-db初始化数据库商店种子数据如美国、澳大利亚商店位于 database/seeders/Stores/。实战一条每周降价报告流水线把 API 和 CLI 组合起来就是一个完整的自动化闭环用pricebuddy sync保持本地镜像最新定时任务里运行pricebuddy drops --days 7 --json生成降价清单需要深挖某个产品时调GET /api/products/{id}?includeinsights拿到交易评分和历史最低把结果推送到自己的通知渠道PriceBuddy 本身也内置了 Telegram、Discord、Gotify 等通知渠道源码在 app/Notifications/Channels/相关 API 测试用例可当接口示例用在 tests/Feature/Api/ 下比如 ProductApiTest.php、StoreApiTest.php。小结认证用户菜单生成 API Token只显示一次文档/docs/api交互式调试 OpenAPI 导出API标准 CRUD meta-extractionclient-config URL 精确匹配⌨️CLIdoctor→sync→deals/drops/history三步上手--agent/--json/--dry-run面向脚本与 AIartisanbuddy:fetch-due等命令支撑定时抓取与数据维护有了这套 REST API 与 CLI 命令PriceBuddy 就不只是一个看价格的网页而是可以嵌入任何自动化体系的价格情报中心。【免费下载链接】pricebuddyA self hostable app that tracks prices and sends you notifications when prices match your preferences项目地址: https://gitcode.com/gh_mirrors/pr/pricebuddy创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考