You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何实现谷歌等爬虫无法点击的JavaScript链接以避免广告主余额消耗

防爬虫点击广告链接实现方案

核心原理

绝大多数通用爬虫不会执行页面JavaScript逻辑,也不会主动识别非标准链接元素的点击跳转逻辑,因此将广告跳转逻辑绑定为动态DOM事件即可过滤90%以上的爬虫异常点击。


实现示例

方案1:无href属性a标签绑定跳转(兼顾用户点击交互体验)

<!-- 广告链接结构 -->
<a class="ad-item" data-target="广告主落地页地址" rel="nofollow">
  广告素材/文案内容
</a>

<script>
// 页面加载完成后绑定点击事件
document.addEventListener('DOMContentLoaded', () => {
  document.querySelectorAll('.ad-item').forEach(ad => {
    ad.addEventListener('click', () => {
      // 可先执行广告点击上报、反作弊校验等逻辑
      window.open(ad.dataset.target, '_blank', 'noopener noreferrer');
    });
  });
});
</script>

补充说明:rel="nofollow"可额外提醒遵守爬虫协议的蜘蛛不要追踪该链接,进一步降低被爬风险。

方案2:普通元素绑定跳转(完全不暴露链接特征)

如果要完全避免爬虫识别为链接,直接用div/span等非链接元素作为广告载体即可:

<!-- 广告卡片结构 -->
<div class="ad-card" data-target="广告主落地页地址" style="cursor: pointer;">
  <img src="广告图片地址" alt="推广内容">
  <p>广告推广文案</p>
</div>

<script>
document.addEventListener('DOMContentLoaded', () => {
  document.querySelectorAll('.ad-card').forEach(card => {
    card.addEventListener('click', () => {
      // 点击上报逻辑
      window.location.href = card.dataset.target;
    });
  });
});
</script>

额外优化建议

  • 不要使用javascript:伪协议写跳转逻辑,部分爬虫会识别这类内容为链接
  • 可以配合服务端UA校验,拦截已知爬虫UA的广告资源访问请求,实现双层防护
  • 广告跳转链接不要直接写在静态HTML的属性里,可以通过接口动态获取后再执行跳转,防护等级更高

内容的提问来源于stack exchange,提问作者ricard0

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 17:54:03