Appearance
案例 2:商品价格监控工具
场景描述
监控电商平台商品价格变化,支持多平台比价
工具配置
插件信息
- 插件名称:商品价格监控
- 插件备注:监控多平台商品价格,支持历史价格对比
工具配置
- 工具名称:
monitor_price - 工具介绍:监控指定商品的价格,返回当前价格和历史最低价
- 工具参数:
url(字符串): 商品页面URLname(字符串): 商品名称(可选)
完整代码
js
/**
* 商品价格监控工具
*
* 使用方式:
* 1. 在工具配置的"页面输入框"中设置目标商品URL(京东/淘宝/天猫等)
* 2. 工具代码会直接在目标页面执行
* 3. 参数:url(商品页面URL)、name(商品名称可选)
*/
class Tool extends OPENUGC_API_V2 {
constructor(args) {
super(args); // 必须调用 super(args) 才能使用 this.args
this.productUrl = args.url;
this.productName = args.name || '未知商品';
}
async run() {
try {
// 如果用户在工具配置中设置了商品页面URL,
// 系统已自动打开该商品页面
// 此处代码直接在目标页面执行,无需调用 OpenUrl()
// 检测平台类型
let platform = 'unknown';
let price = '';
let title = '';
if (window.location.hostname.includes('jd.com')) {
platform = '京东';
price = document.querySelector('.price')?.innerText || '';
title = document.querySelector('.sku-name')?.innerText?.trim() || '';
} else if (window.location.hostname.includes('taobao.com')) {
platform = '淘宝';
price = document.querySelector('.tb-price')?.innerText || '';
title = document.querySelector('.tb-item-title')?.innerText?.trim() || '';
} else if (window.location.hostname.includes('tmall.com')) {
platform = '天猫';
price = document.querySelector('.tm-price-panel .tm-price')?.innerText || '';
title = document.querySelector('.tm-item-title')?.innerText?.trim() || '';
}
// 价格格式化
const formatPrice = (priceStr) => {
const match = priceStr.match(/[\d.]+/);
return match ? parseFloat(match[0]) : 0;
};
const currentPrice = formatPrice(price);
const lowestPrice = currentPrice * 0.85; // 模拟历史最低价
const result = {
platform,
title: title || this.productName,
current_price: currentPrice,
lowest_price: Math.round(lowestPrice * 100) / 100,
price_trend: currentPrice > lowestPrice ? 'up' : 'down',
extracted_at: new Date().toISOString(),
url: window.location.href
};
return {
success: true,
product: result,
message: result.price_trend === 'up'
? `当前价格 ${result.current_price} 元,比历史最低价高 ${Math.round((result.current_price - result.lowest_price) * 100) / 100} 元`
: `当前价格 ${result.current_price} 元,为近期低价!`
};
} catch (error) {
return {
success: false,
error: error.message,
url: this.productUrl,
timestamp: new Date().toISOString()
};
}
}
}使用示例
用户:请监控这个商品的价格 https://item.jd.com/xxx.html
AI:正在调用"商品价格监控"工具...
✅ 京东平台
📦 商品:iPhone 15 Pro 256GB 深空黑色
💰 当前价格:¥8999
📉 历史最低:¥7999
📊 趋势:价格上涨
当前价格比历史最低价高 1000 元,建议关注降价促销相关链接
- 案例 1:热搜数据抓取工具 - 学习数据抓取
- 案例 3:新闻聚合工具 - 学习多页面处理
- 基础使用 - 了解插件开发基础
