微信域名检测api接口分享(附上PHP和Python代码)
发布于 4 年前 作者 li74 1649 次浏览 来自 分享

由于项目需要在微信推广,域名时不时被屏蔽或拦截,更何况微信限制也是越来越严格了,作为一名程序猿,决定开发稳定、正确率高的微信域名检测api接口。

域名被拦截判断分析

if	域名能正常访问(显示未被拦截)
if	域名被微信拦截
	if	链接抱红
		else	提示已停止访问网页
	if	安全提示
		else	提示非官方网页
	if	安全提示
		else	提示网址包含过多重定向
	if	拦截提示
		else	请长按复制链接使用浏览器访问(应用场景)

微信域名检测api接口代码

接口地址: http://api.new.urlzt.com/api/vx> 请求方式: GET/POST> 请求示例: http://api.new.urlzt.com/api/vx?token=Token值(后台生成获取)&url=www.urlzt.com

PHP demo代码

<?php
// Token值后台生成获取,后台地址:https://dwz.cn/TzLUYNU2
$apiToken = "********************************";
// 需要检测的地址或域名
$reqUrl = "www.urlzt.com";
$url = sprintf("http://api.new.urlzt.com/api/qq?token=Token值&url=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));
}

Python demo代码

# -*- coding: utf-8 -*-
 
import json, urllib
from urllib import urlencode
 
def main():
    # Token值后台生成获取,后台地址:https://dwz.cn/TzLUYNU2
    apiToken = "*********************"
 
    url = "https://wx.horocn.com/api/v1/wxUrlCheck"
    params = {
        "req_url" : "www.urlzt.com", #需要检测的地址或域名
        "api_token" : apiToken,
 
    }
    params = urlencode(params)
    f = urllib.urlopen("%s?%s" % (url, params))
 
    content = f.read()
    res = json.loads(content)
    if res:
        code = res["code"]
        if code == 0:
            #成功请求
            print res["result"]
        else:
            print "%s: %s" % (res["code"],res["msg"])
    else:
        print "request api error"
 
if __name__ == '__main__':
    main()
回到顶部