php教程

php百度收录量API查询代码

我的站长站 2020-06-23 人阅读

天给大家分享一个php的百度收录查询API源码,大家可自行封装为接口。,如果对你有帮助就看看吧。

实例代码

<?php
$domain = (isset($_GET['domain']))?$_GET['domain']:$_POST['domain'];
if(empty($domain))  echo '查询域名不能为空';
$count = baiduSL ($domain);
if(!isset($count))  showjson(array('code'=>200502,'msg'=>'查询失败,请重试!'));
if(!$count)  $count = 0;
$result=array(
'code'=>1,
'domain'=>$domain,
'data'=>$count
);
print_r(json_encode($result));
unset($value,$url_arr,$domain,$row,$hostrow,$site,$resulturl,$result,$ch);
function baiduSL ($domain) {
$baidu='https://www.baidu.com/s?ie=utf-8&tn=baidu&wd=site%3A'.$domain; 
$bdsite=BD_curl($baidu); 
$bdsite = str_replace(array("rn", "r", "n", '    '), '', $bdsite); 
preg_match('/该网站共有(.*?)个网页被百度收录/i',$bdsite,$count);
if (!$count) preg_match('/找到相关结果数约(.*?)个/i',$bdsite,$count);
//ereg('该网站共有(.*)个网页被百度收录', $bdsite,$count); 
//print_r($count);
//$count=str_replace('该网站共有','',$count); 
//$count=str_replace('个网页被百度收录','',$count); 
$count = str_replace(array("rn", "r", "n", ',', ' '), '', $count); 
$baiduSL=strip_tags($count[1]); 
unset($count);
return $baiduSL;
}
function BD_curl($url, $post=0, $referer=0, $cookie=0, $header=0, $ua=0, $nobaody=0){
$ch = curl_init();
$ip = rand(0,255).'.'.rand(0,255).'.'.rand(0,255).'.'.rand(0,255) ;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
//$httpheader[] = "Host: www.baidu.com";
//$httpheader[] = "Connection: keep-alive";
//$httpheader[] = "Upgrade-Insecure-Requests: 1";
//$httpheader[] = "User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36";
$httpheader[] = "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8";
$httpheader[] = "Accept-Encoding: gzip, deflate, sdch, br";
$httpheader[] = "Accept-Language: zh-CN,zh;q=0.8";
//$httpheader[] = 'X-FORWARDED-FOR:'.$ip;
//$httpheader[] = 'CLIENT-IP:'.$ip;
curl_setopt($ch, CURLOPT_HTTPHEADER, $httpheader);
if ($post) {
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
}
if ($header) {
curl_setopt($ch, CURLOPT_HEADER, true);
}
if ($cookie) {
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
}
if($referer){
if($referer==1){
curl_setopt($ch, CURLOPT_REFERER, 'https://music.163.com/outchain/player?type=0&id=2250011882&auto=1');
}else{
curl_setopt($ch, CURLOPT_REFERER, $referer);
}
}
if ($ua) {
curl_setopt($ch, CURLOPT_USERAGENT, $ua);
}
else {
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1");
}
if ($nobaody) {
curl_setopt($ch, CURLOPT_NOBODY, 1);
}
curl_setopt($ch, CURLOPT_TIMEOUT, 3);
curl_setopt($ch, CURLOPT_ENCODING, "gzip");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$ret = curl_exec($ch);
//$Headers = curl_getinfo($ch);
curl_close($ch);
return $ret;
}
function showjson($arr){
header("Content-Type: application/json; charset=utf-8");
exit(json_encode($arr,320));
}


相关专题
API
API
2022-06-15 121

API是开发中必备知识点,合理的应用API可以大大节省开发成本,为您整理收集了包含API接口的信息,包含API接口,API代码,API源码,助你更快的学习使用API技术....

相关推荐
  • php代码
  • 支付宝企业账户转账个人账户php接口代码

    前言支付宝企业账户转账个人账户php接口代码,该接口主要用于平台对用户奖励的发放,场景也很简单就是我在你平台上有余额,我提现,平台给钱。只不过项目中是用的官方的SDK调用的,仔细看了下那个SDK目录,把很多无用的接口(目前自己用不上)也包含在里面,作为强...

    php教程 178 2年前
  • php判断目录文件是否存在

    一段简单的php判断目录文件是否存在代码,收藏记录一下,以后肯定用得到的。<?php$filename = &#39;../../e/install/&#39;; if (file_exists($filename)) { echo "<h3><div align=&#39;center&#39;><font color=&#39;#FF0000&#39;>存在安全风险!请将 ...

    php教程 125 2年前
  • curl函数获取API接口数据方法

    PHP利用curl函数,获取API接口数据方法示例代码,自用收藏<?php $weather = curl_init(); curl_setopt($weather,CURLOPT_URL,"https://api.pc2801.com/cqssc/".time()); curl_setopt($weather, CURLOPT_SSL_VERIFYPEER, false); //如果...

    php教程 102 2年前
最新更新