gpt4 book ai didi

php - 从 PHP 的 View 计数器中排除机器人和蜘蛛

转载 作者:可可西里 更新时间:2023-11-01 12:49:52 24 4
gpt4 key购买 nike

我用 PHP 为网站构建了一个非常基本的广告管理器。

我说基本是因为它不像 Google 或 Facebook 广告甚至大多数高端广告服务器那样复杂。不处理付款或任何事情,甚至不针对用户。

尽管它只是显示随机横幅广告、计算展示次数和点击次数,但它还是为我的低流量网站服务的。

特点:

  • 页面上的广告位/位置
  • 横幅图片
  • 姓名
  • 查看/印象计数器
  • 点击计数器
  • 开始和结束日期,或永无止境
  • 禁用/启用广告

不过,我想逐渐向系统添加更多功能。

我注意到的一件事是展示次数/观看次数计数器经常显得过高。

我认为造成这种情况的原因是社交网络的蜘蛛和机器人以及搜索引擎蜘蛛。

例如,如果有人从我网站上的一个页面输入一个 URL 到 Facebook、Google+、Twitter、LinkedIn、Pinterest 和其他网络,这些网站通常会爬取我的网站以收集网页标题、图像和描述。

我真的很希望能够在实际人员未查看页面时禁止将其计为广告展示次数/查看次数。

我意识到这将很难检测到所有这些,但如果有办法获得其中的大部分,至少它会使我的统计数据更准确一些。

所以我正在寻求有关如何实现我的目标的任何帮助或想法?请不要说使用其他广告系统,那是不可能的,谢谢

enter image description here

最佳答案

您需要使用 JavaScript 提供广告。这是避免大多数爬虫的唯一方法。只有浏览器加载图像、JS 和 CSS 等依赖项。 99% 的机器人都会避开它们。

你也可以这样做:

// basic crawler detection and block script (no legit browser should match this)
if(!empty($_SERVER['HTTP_USER_AGENT']) and preg_match('~(bot|crawl)~i', $_SERVER['HTTP_USER_AGENT'])){
// this is a crawler and you should not show ads here
}

这样你会得到更好的统计数据。 为广告使用 JS。

PS:您也可以尝试在 JS 中设置一个 cookie,然后再检查它。爬虫可能会通过 HTTP 获取在 PHP 中发送的 cookie,但那些在 JS 中设置的 99.9他们错过它的机会百分比。因为他们需要加载一个 JS 文件并解释它。这只能由浏览器完成。

关于php - 从 PHP 的 View 计数器中排除机器人和蜘蛛,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17515381/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com