今天分享可以利用宝塔计划任务实现百度自动推送代码实例及教程

在网站根目录新建一个文件夹或直接新建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":[]
}

这就完事了,以后会自动在你设置的时间段执行访问一次。