使用PHP SDK对文本内容进行垃圾内容或关键字检测。

接口描述

TextScanRequest
功能 支持的Region 描述
文本扫描接口 cn-shanghaicn-beijing 支持文本垃圾检测(scene=antispam)和文本关键词检测(scene=keyword)。
说明
提交检测的文本长度不长于4,000个字符。

自定义关键词

文本垃圾检测支持自定义关键词。例如添加一些竞品关键词等,您可以前往云盾内容安全控制台进行设置。支持批量导入关键词,关键词编码请使用UTF-8;批量导入的关键词默认自动对接口生效,生效延时约为15分钟。

检测结果说明
  • 文本垃圾检测(scene=antispam)返回结果判断依据:
    • suggestion == pass 未命中垃圾
    • suggestion == block 命中了垃圾,可以通过label字段查看命中的垃圾分类
  • 关键词检测(scene=keyword)返回结果判断依据:

    • suggestion == pass 未命中关键词
    • suggestion == block 命中了关键词,可以通过label字段查看命中的关键词分类

调用示例

<?php
/**
 * Created by PhpStorm.
 * User: hyliu
 * Date: 2017/4/21
 * Time: 10:02
 */
include_once 'aliyuncs/aliyun-php-sdk-core/Config.php';
use Green\Request\V20180509 as Green;
date_default_timezone_set("PRC");
$ak = parse_ini_file("aliyun.ak.ini");
// 请替换成您自己的accessKeyId、accessKeySecret
$iClientProfile = DefaultProfile::getProfile("cn-shanghai", $ak["accessKeyId"], $ak["accessKeySecret"]); // TODO
DefaultProfile::addEndpoint("cn-shanghai", "cn-shanghai", "Green", "green.cn-shanghai.aliyuncs.com");
$client = new DefaultAcsClient($iClientProfile);
$request = new Green\TextScanRequest();
$request->setMethod("POST");
$request->setAcceptFormat("JSON");
$task1 = array('dataId' =>  uniqid(),
    'content' => '你真棒'
);
/**
    * 文本垃圾检测: antispam
    * 关键词检测: keyword
**/
$request->setContent(json_encode(array("tasks" => array($task1),
    "scenes" => array("antispam"))));
try {
    $response = $client->getAcsResponse($request);
    print_r($response);
    if(200 == $response->code){
        $taskResults = $response->data;
        foreach ($taskResults as $taskResult) {
            if(200 == $taskResult->code){
                $sceneResults = $taskResult->results;
                foreach ($sceneResults as $sceneResult) {
                    $scene = $sceneResult->scene;
                    $suggestion = $sceneResult->suggestion;
                    //根据scene和suggetion做相关处理
                    //do something
                    print_r($scene);
                    print_r($suggestion);
                }
            }else{
                print_r("task process fail:" + $response->code);
            }
        }
    }else{
        print_r("detect not success. code:" + $response->code);
    }
} catch (Exception $e) {
    print_r($e);
}