今天分享可以利用宝塔计划任务实现百度自动推送代码实例及教程
在网站根目录新建一个文件夹或直接新建php,我的是在根目录新建了一个tool文件夹,文件夹里面新建一个名字.php
张贴以下代码:
<?php
header('Content-Type:text/html;charset=utf-8');
$xmldata =file_get_contents("https://www.grer.cn/sitemap.xml");
$xmlstring = simplexml_load_string($xmldata,'SimpleXMLElement',LIBXML_NOCDATA);
$value_array = json_decode(json_encode($xmlstring),true);
$url = [];
for ($i =0;$i < count($value_array['url']);$i++){
echo $value_array['url'][$i]['loc']."<br/>";
$url[]= $value_array['url'][$i]['loc'];
}
$api ='百度站长的推送接口';
$ch = curl_init();
$options = array(
CURLOPT_URL => $api,
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POSTFIELDS => implode("\n",$url),
CURLOPT_HTTPHEADER => array('Content-Type:text/plain'),
);
curl_setopt_array($ch, $options);
$result =curl_exec($ch);
echo $result;
?>
以上代码需要修改第3
行为你的sitemap.xml
路径,第11
行是你的百度api接口
!
打开宝塔的计划任务
栏新建:
- 任务类型:访问URL
- 任务名称:随意
- 执行周期:每天 (sitemap主动推送每天只能一次,执行时间也随便)
- URL地址:https://www.grer.cn/api/tool/bdsitemap.php(刚刚新建的php文件路径)
保存,然后手动执行看看日志是否成功。
成功返回示例:
{
"remain":99998,
"success":2,
"not_same_site":[],
"not_valid":[]
}
这就完事了,以后会自动在你设置的时间段执行访问一次。