跳到正文

应用场景

广告验证代理

广告验证代理为检查增加一个选定的网络位置。请记录出口、广告素材、重定向链、广告位和时间戳。

最后更新:

问题

广告验证代理能证明什么、不能证明什么

广告验证代理通过另一个网络位置路由检查请求,让您查看在该位置返回的广告素材、发布商广告位、重定向路径和落地页。它可以揭示值得调查的不一致之处,但代理结果本身并不能证明存在欺诈。

当发布商或广告平台对网络来源进行分类时,数据中心出口和住宅出口可能收到不同的内容。如果调查涉及特定来源的行为,请对两者进行比较。

住宅 IPv4 提供 ISP 来源的出口和位置控制。发布商仍可以评估其他请求和浏览器信号,因此不要把验证请求描述为与真人无法区分。

每次检查都要记录出口 IP、时间戳、请求的 URL 与最终 URL、HTTP 状态、广告素材、广告位、截图和账户状态。比较不同市场时,请报告样本量、成功率、验证挑战率和测试日期。在上报可疑结果之前,先重复验证。

如果您想在做决定前比较各种工作流程,可以浏览所有代理应用场景,看看哪种配置最合适。

TrueProxies 如何解决

为广告验证增加住宅观测点

覆盖 150 多个国家的消费者 ISP 出口

住宅 IPv4 出口位于家庭 ISP 网络,也就是广告系统向消费者投放活动的来源。发布商仍可读取浏览器和行为信号,因此每次响应都要记录出口。

城市、地区和 ASN 定位

按 GB 计费套餐可按国家、城市、地区或 ASN 定位,写在代理用户名中。不限流量套餐仅支持国家定位。在判断地理定位活动之前先验证出口。

证据模板与预检

空白 JSON 和 CSV 模板、字段词典以及代理检查器预检,把零散的截图变成可比较、可重复、可交给广告网络或客户的观察记录。

集成

使用 TrueProxies 设置广告验证

  1. 1在收集证据之前,先确定广告活动、预期市场、广告素材、发布商、广告位、检查计划和上报规则。
  2. 2定期审核选择按 GB 计费;如为固定周期的检查计划,则比较按速度和时长计费的不限流量套餐。
  3. 3生成代理连接信息并选择目标国家。只有当当前的路由网络和客户可用的定位选项明确提供更精细的控制时,才使用它。
  4. 4在加载广告或发布商页面之前,核实并记录观测到的代理出口。
  5. 5记录时间戳、请求的 URL 与最终 URL、HTTP 状态、广告素材、广告位、重定向链、账户状态和截图。
  6. 6从对照位置重复验证可疑结果,并在上报之前将证据与广告平台的报告进行比较。
Playwright
import { chromium } from "playwright";

// Node 18+, npm i playwright. Run: node check.mjs https://example.com/landing
// Gateway and credentials come from your dashboard. Targeting is written on the
// username: USER-country-de on both products, USER-country-de-city-berlin on GB-based.
const url = process.argv[2];
const proxy = {
  server: process.env.PROXY_SERVER, // e.g. http://YOUR_HOST:8080
  username: process.env.PROXY_USER, // e.g. USER-country-de-city-berlin-session-ad01
  password: process.env.PROXY_PASS,
};

const browser = await chromium.launch({ proxy });
try {
  const context = await browser.newContext({ recordHar: { path: "check.har" } });
  const page = await context.newPage();

  // Preflight: record the exit the ad server will see before loading the target.
  const exit = await (await page.goto("https://httpbin.org/ip")).json();

  const navigations = [];
  page.on("framenavigated", (frame) => {
    if (frame === page.mainFrame()) navigations.push(frame.url());
  });

  const response = await page.goto(url, { waitUntil: "networkidle" });
  const httpRedirects = [];
  for (let request = response?.request(); request; request = request.redirectedFrom()) {
    httpRedirects.unshift(request.url());
  }

  await page.screenshot({ path: "check.png", fullPage: true });
  console.log(JSON.stringify({
    checkedAt: new Date().toISOString(),
    exit,
    url,
    status: response?.status(),
    httpRedirects,
    navigations,
    finalUrl: page.url(),
  }, null, 2));

  await context.close(); // writes check.har
} finally {
  await browser.close();
}

实现方式

自定义脚本PuppeteerPlaywright

可选的证据资源

广告验证证据工具包

在采集前声明批次,保留成功和失败的观测记录,并根据同样顺序的 snake_case 字段计算汇总。空白下载文件不包含任何观测记录、认证信息、原始出口 IP、账户标识、截图或共享访问令牌。

方法版本:ad-verification-v1

审核日期:

空白模板 · 不含观测记录

受控的采集方法

  1. 1预先声明非敏感的批次编号和广告活动引用、预期市场、检查计划、样本量、成功判定规则、可选的配对验证挑战指标、稳定等待窗口、选择器观测窗口和已知局限。
  2. 2预检服务器端的代理连通性和冷连接响应时间,然后分别验证可全局路由的 IPv4 浏览器出口,以及所分配的 ISO 3166-1 alpha-2 路由国家代码是否匹配。将原始出口证据存放在工作表之外,只使用不可逆且受访问控制的引用。
  3. 3存储经批准的 URL 源和不含访问令牌的精确路径。移除认证信息、查询参数和片段;对其他所有路径进行脱敏,同时保留其实际的 HTTP(S) 源。
  4. 4为每条观测记录分配唯一编号。仅在目标页面导航成功后才运行目标选择器和截图;将截图保存在权限受限的私有目录中,只输出可为空的非公开引用。
  5. 5评估所有已声明的成功判定条件。对于导航失败后跳过的目标证据,记录为 not_tested;仅在经过验证挑战测试的观测记录中计算验证挑战率,并在旁边公布验证挑战测试的覆盖率。

解读局限

  • 代理增加的是一个网络观测点,无法复现每一位消费者、每个账户、设备、浏览器指纹、Cookie 状态或竞价条件。
  • 广告位差异是需要重复验证和调查的证据,而不是欺诈、无效流量、隐藏行为或目标接受的自动证明。
  • 代理检测是服务器端的连通性诊断工具,报告的是冷连接响应时间,而不是带宽。IP 泄露测试检查浏览器可见的路由信号。这两个工具都不能证明广告投放正确。
  • 公开的文件刻意保留为空白。只填入经授权的观测记录,并将敏感的原始证据保存在受访问控制的系统中。

常见问题

常见问题解答

什么是广告验证代理?

广告验证代理为广告位检查提供额外的网络位置。设备、账户和浏览器条件必须单独控制。

为什么要为广告验证测试住宅代理?

住宅网络来源和数据中心网络来源可能收到不同的内容。住宅出口增加了一个 ISP 来源的观测点,但不能保证完全复现每位消费者的体验。

可以同时在多个国家验证广告吗?

住宅 IPv4 公布的覆盖范围为 150+ 个国家/地区,按 GB 计费套餐支持城市、地区和 ASN 定位。请根据广告活动的需要按城市、地区或 ASN 定位,核实每个出口 IP,并适当限制并行检查的速率。

广告验证应该测试哪款 TrueProxies 套餐?

将适合持续传输、按速度和时长计费的不限流量套餐,与适合定期检查的按 GB 计费进行比较。选择前,请先测量一个有代表性的验证批次。

广告验证代理能显示什么?

代理可以显示返回到选定网络位置的广告素材和广告位。请把可疑差异当作需要重复验证和调查的证据,而不是欺诈的自动证明。

免费试用

记录选定且经过核实的出口所返回的内容。

开始试用,用您自己的工作负载进行测试。

开始试用