微信域名批量检测接口分享(附上最新PHP代码)
发布于 4 年前 作者 xueli 3801 次浏览 来自 分享

之前由于团队业务需要,开发了微信域名检测代码,接口问题也完美解决了,这下从人工检测到运行代码就可以解决。可后面业务量大后只能单个链接进行检测,作为一名程序猿,开启研究域名批量检测的实现原理和市面上有批量检测功能的域名检测系统代码。开发过程可以说很困难,之前单一的微信域名检测代码判断属于单向,而批量检测属于多向判断,工程上更加复杂,现在就分享给大家代码,也可以自己拿来研究研究!

微信域名批量检测的实现原理

微信后台自动检测会通过页面内容、关键词、描述、图片、URL、IP以及友链黑名单等判断原则,同时微信人工检测是针对:多用户投诉举报并在一定时间内积累举报次数过多的域名或网站才会被拦截。

判断

  • 利用生成的短链接,用代码定期去请求生成的短链接,判断是否能生成短链接。如果能生成,则说明域名没有被拦截,并且进入批量检测功能;如果没有生成,则表示域名已被拦截,则没有必要进行检测功能。
  • 采用协议检测,协议分布在多服务器上,这种方式可以支持定时脚本实现批量检测,再结合微信域名跳转技术和开启CDN,也提高了URl在微信里的存活时间。

微信域名检测批量接口

php代码

 // api接口获取地址:www.urlzt.com(登录后台自动生成唯一的Token值,注册登录地址:https://dwz.cn/TzLUYNU2)
 //请求方式:GET/POST
  $apiToken = "********************************";
 // 需要检测的地址或域名
  $reqUrl = "www.urlzt.com";
  $url = sprintf("http://www.urlzt.com", $apiToken, $reqUrl);
  $ch = curl_init($url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);
  $responseBody = curl_exec($ch);
  $responseArr = json_decode($responseBody, true);
  if (json_last_error() != JSON_ERROR_NONE) {
  echo "JSON 解析接口结果出错\n";
  return;
  }
  if (isset($responseArr['code']) && $responseArr['code'] == 0) {
  // 接口正确返回
  // $responseArr['data']['status'] 的取值范围:ok、blocked
  // ok 表示正常、blocked 表示被封
  printf("测试地址(%s)的状态为:%s\n", $reqUrl, $responseArr['data']['status']);
  } else {
  printf("接口异常:%s\n", var_export($responseArr, true));
  }

接口对接教程:《2021最新的微信官方域名检测API接口》

域名检测源码使用教程:《如何检测微信域名有没有被屏蔽或被拦截》

qq域名检测接口:《qq域名检测api接口分享(附内部访问自动跳转PHP代码)》

域名检测ICP接口:《分享一个域名ICP备案检测接口代码》

回到顶部