标题: 百度的主动推送为什么老是出错,求解
时间: 2019-11-16发布,2019-11-16修改
//百度主动推送
$site = '站点域名';
$token = '推送token';
$url = $_GET['url'];
if(check($url) == 0){
//收录则返回图片‘是’
img("Y","green");
}else{
//未收录则提交url并返回图片‘否’
$str = urlpost($url);
if(checksubmit($str) == true){
img("N","green");
}else{
img("N","red");
}
}
function urlpost($url){
//推送url函数
$urls = $url;
$api = 'http://data.zz.baidu.com/urls?site='.$site.'&token='.$token;
$ch = curl_init();
$options = array(
CURLOPT_URL => $api,
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POSTFIELDS => $urls,
CURLOPT_HTTPHEADER => array('Content-Type: text/plain'),
);
curl_setopt_array($ch, $options);
$result = curl_exec($ch);
return $result;
curl_close($ch);
}
function check($url){
//检验是否收录
$url = 'http://www.baidu.com/s?wd='.$url;
$curl=curl_init();
curl_setopt($curl,CURLOPT_URL,$url);
curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
$rs=curl_exec($curl);
curl_close($curl);
if(strpos($rs,'为您找到相关结果约0个') === false && strpos($rs,'没有找到') === false && strpos($rs,'没有找到该URL') === false){
return 0;//已收录
}else{
return 1;//未收录
}
}
function img($str,$color){
//返回图片,收录返回Y,未收录返回N,提交成功返回绿色字体,失败返回红色字体
$im = imagecreate(25, 25);
$bg = imagecolorallocate($im, 255, 255, 255); //设置画布的背景为白色
if($color = "red"){
$co = imagecolorallocate($im, 255, 0, 0); //红色字体
}else{
$co = imagecolorallocate($im, 0, 255, 150); //绿色字体
}
imagechar($im, 5,9,4,$str,$co);
header('Content-type:image/png');
imagepng($im);
}
function checksubmit($str){
//检测推送结果
if(strpos($str,'error') === false){
return true;
}else{
return false;
}
}
『回复列表(1|隐藏机器人聊天)』