Loading Light/Dark Toggle
为价格争议审核捕获产品页面截图

如何为价格争议审核获取产品页面截图

Scrapeless Agent Browser 会渲染产品页面以进行截图捕获,而 Scrapeless Residential Proxies 支持在店面商品因市场而异的情况下进行特定地区的数据采集。

摘要

  • 有用的截图会将价格与优惠联系起来。 在金额旁边包含所选变体、卖家、市场和相关条件。
  • 捕获将在变体确认后开始。 在页面更新期间截取的屏幕截图可能会组合错误的选项和价格。
  • 证据清单将图像锚定到一次收集事件。 记录最终 URL、捕获间隔、解析字段和图像摘要。
  • 评测用副本可以进行裁剪或涂黑。 在访问控制下保留原始内容,并为每个衍生内容创建单独的记录。

定义截图应回答的问题

产品页面截图有助于审核员确定在记录的浏览器环境中店面展示的是哪个商品报价。它应说明是谁在销售该商品、选择了哪个变体、显示的价格是多少,以及购物者是否需要会员资格、优惠券或最低数量要求。如果争议涉及广告价格,记录应标明展示界面。结账步骤之后看到的价格属于不同的证据类别。

截取的金额本身缺乏上下文。相邻的两个价格可能分别代表折扣价和标价。更改配送地区后,报价框中可能会显示另一位卖家。在未选择尺码前,鞋类页面可能只显示起始价格。请先在审核表单中定义好问题,然后再进行截屏,以确保画面中包含回答这些问题所需的元素。

Use the 为商业条款提供词汇 以构建 sidecar 记录的结构。截图展示了工作流程中某个点的像素。提取出的字段让这些像素更易于搜索。两者应共享同一个捕获 ID,并且都不应通过就地编辑的方式来修正审核标签。应在单独的审核决定中记录更正。

配置可重现的捕获上下文

记录目标 URL、最终 URL、预期地区、观测到的市场、货币、视口尺寸、区域设置和捕获时间间隔。若页面提供,则添加卖家和商品变体标识符。若已批准的会话以已知的市场或配送设置开始,记录与争议相关的重要设置。不要在清单中包含凭证、Cookie 和个人账户详情。

在比较不同截图中的图像时,请使用一致的视窗。移动端和桌面端布局可能会将优惠条件移入选项卡或折叠卖家信息。当争议价格出现在移动端时,移动端截图很有用。单独的桌面端截图可以以不同的排列方式显示披露信息,并具有各自的时间戳和上下文。

使用 无抓取住宅代理 当授权捕获需要特定地区路由时,代理可以选择网络位置。浏览器会话仍然需要店面显示预期的货币和配送地区。将不匹配记录为不匹配,并将其与主要证据分开保存。

在 Playwright 中捕获已解析的 Offer

在精确核对所选报价后,应进行截屏。 Playwright 截图 API 支持页面和定位器捕获。当单个区域同时包含价格及其限定信息时,使用作用域捕获。当卖家或购买条件位于报价面板之外时,使用更宽范围的捕获。在为票券或展示生成裁剪副本之前,先捕获原始视图。

在带有 Chromium 运行时的 Node.js 项目中安装 Playwright。以一个受控的产品页面夹具开始。该示例假设存在一个尺码组合框、一个已解析的优惠区域、一个已选变体标签以及一个价格。请将这些选择器替换为与你的店面经过验证的控件。云端运行需要一个 Scrapeless 账户和受支持的浏览器连接。

async function captureOffer(page, targetUrl, variant, filePath) {
  await page.goto(targetUrl, { waitUntil: 'domcontentloaded' });
  const offer = page.getByTestId('offer-panel');
  await offer.getByRole('combobox', { name: 'Size' }).selectOption(variant);
  const committed = offer.locator('[data-state="ready"]').filter({
    has: page.getByTestId('selected-variant').getByText(variant, { exact: true })
  });
  await committed.waitFor({ state: 'visible' });
  await committed.getByTestId('offer-price').waitFor({ state: 'visible' });

  const before = await committed.innerText();
  const startedAt = new Date().toISOString();
  const bytes = await committed.screenshot({ animations: 'disabled' });
  const finishedAt = new Date().toISOString();
  const after = await committed.innerText();
  if (before !== after) throw new Error('Offer changed during capture');

  const { createHash } = require('node:crypto');
  const { writeFile } = require('node:fs/promises');
  const sha256 = createHash('sha256').update(bytes).digest('hex');
  await writeFile(filePath, bytes, { flag: 'wx' });
  return { url: page.url(), variant, startedAt, finishedAt, text: after, sha256 };
}

在受控鞋类夹具上,在拍摄前选择 M 会将面板更改为 45.00 美元。该函数会在调用方提供的唯一文件路径下写入图像,并返回其摘要和文本。示例通过比较截图前后的面板文本来检测捕获过程中是否发生可见变化。在实际商店中,可根据需要将就绪检查扩展为包括卖家、货币、可用性和披露状态。对精确字节进行摘要有助于检测该文件后续的更改。

将图像和提取的字段绑定到同一事件

审查清单应描述截图的范围、捕获的开始和结束、源 URL 以及可见的数值。 RFC 3339 时间戳 以保持时区解释的一致性。根据你的工作流程,在记录的时间区间内定义一个观测时间,并将后续审核者操作的时间保存在单独的记录中。

Manifest 字段审核使用
捕获 ID 和目标优惠键将证据与有争议的观察联系起来
请求的 URL 与最终 URL区分原始目标与重定向和市场路径
变体、卖家、市场和价格上下文确定已捕获金额对应的是哪一个报价
图像路径、摘要和捕获时间区间检索精确字节并将图像放入时间线中
捕获方法和适配器版本解释采集器为何选择此面板以及就绪性检查的原因

使用来自 安全哈希标准 的已文档化算法,在存储原始图像时计算摘要。该摘要用于验证某个文件是否与先前进行哈希处理的字节相匹配。分别记录来源和采集控制,以确定图像是如何生成的。限制对证据存储的写入,并通过案件系统为审阅者提供只读访问。

当截图包含客户标识符、地址或无关会话信息时,应限制对原件的访问,并为一般审阅创建删除敏感信息的派生副本。使用来源捕获 ID 及其自身的摘要对派生副本进行标记。根据审阅流程和政策设置保留期限。在存在正式争议的情况下,与负责团队协调保留要求。

让一名审阅者在无法访问原始浏览器会话的情况下重构一个事件。他们应能够判断店面显示的货币、截图中哪些部分包含报价条款,以及捕获的上下文是否与案件相符。如果他们必须从文件名推断卖家,就应添加卖家字段或扩大捕获范围。将无关细节排除在审阅副本之外。

处理店面漂移和证据不完整

截图应具有明确状态,例如捕获完成、变体不明确、市场不匹配和不可用。中间页、登录墙或同意屏可能在未显示报价的情况下生成图像文件。将该证据标记为不完整,以便审阅者能够看到原因。如果商店重新设计了面板,更新就绪性规则,并将生成的图像与已知案件进行比较。

在浏览器截屏时,商品页面可能会更新。前后对比可以捕捉到部分变化。如果商店公开了已提交的报价标识符或状态版本,应优先采用更强的就绪信号,并保存一个捕获时间区间,而不是暗示单一时刻。当观察到的变更本身与案件相关时,保留第二张图像。

使用 Agent Browser 在云端运行脚本化捕获。该 托管网页自动化解决方案 适用于需要选择选项并等待渲染完成报价的工作流。对于跨店面重复捕获,将其与 用于区域价格监控的代理解决方案配合使用。 Playwright 连接演练 解释了浏览器传输方式,而 Scrapeless pricing 有助于在测量仅文本运行与证据捕获之间的差异后估算工作量。

为审阅者提供可重构的报价

从团队可以在已批准测试页面上复现的争议场景开始。确认变体和货币,在足够上下文下捕获报价,并将不可变的原件和清单附件到案件中。审阅者应能够找到原件,了解采集器为何选择它,并判断其是否代表该争议。

准备好捕获审阅者所需的报价了吗?

使用 Agent Browser 捕获已解析的报价及其可见条款供审阅。

立即注册即可获得 $5 in free credit — 无需信用卡.

领取你的 $5 额度 →

常见问题

争议审查应使用整页截图还是元素截图?

当一个面板包含完整报价上下文时,使用元素截图。当单独的卖家框、购买限制或市场指示器很重要时,捕获更宽的视图。

对图像进行哈希能否证明店面显示过该价格?

摘要可以表明图像字节与先前记录的文件相匹配。来源、捕获上下文和流程控制构成解释图像的依据。

截图是否需要代理或 AI agent?

Playwright 可以在无 agent 的情况下直接捕获截图。当授权工作流要求特定店面市场时,使用按位置定向的代理。

如何处理被屏蔽的商品页面?

将页面记录为不可用,并遵守站点的批准范围与速率限制。根据需要与站点所有者及法律顾问一起审查相关条款和权限。

如果商店更改其商品布局,该怎么办?

在受控示例上重新检查定位器,并验证新的捕获中包含卖家、价格、变体和相关条款。当捕获行为发生变化时,重新审视并发控制。

截图可以在审阅团队之外共享吗?

使用删除敏感信息的派生副本,并仅在案件权限范围内共享。根据证据政策保留原件及任何编辑记录。

参考资料