百度实时推送api接口应用示例


Posted in PHP onOctober 21, 2014

网站质量不错的网站可以在百度站长平台/数据提交/sitemap栏目下看到实时推送的功能, 目前这个工具是邀请开放, 百度的实时推送的api接口可以实时推送我们新发布的文章, 保证百度在第一时间收录.
 
百度站长平台 http://zhanzhang.baidu.com/

百度实时推送api接口应用示例

打开百度站长平台, 点开实时推送的添加新数据接口获得带token的api推送地址:
 
  http://ping.baidu.com/sitemap?site=www.yourdomain.com&resource_name=sitemap&access_token=xxxxxxx 
 

分享一段网友写的php实时推送代码: 

php 实时推送新发布的文章

socketopen方式推送sitemap

 function sitemap_ping_baidu($urls){

         $baidu_ping_url = 'ping.baidu.com';

         $get = '/sitemap?site=www.yourdomain.com&resource_name=sitemap&access_token=xxxxxxx';

         $port=80;

         if ( ( $io = fsockopen( $baidu_ping_url, $port, $errno, $errstr, 50 ) ) !== false )  {

             $send = "POST $get HTTP/1.1"."rn";

             $send .= 'Accept: */*'."rn";

             $send .= 'Cache-Control: no-cache'."rn";

  

           $send .= 'Host: '.$baidu_ping_url."rn";

           $send .= 'Pragma: no-cache'."rn";

           //$send .= "Referer: http://".$url.$get."rn";

           //$send .= 'User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0)'."rn";

            

           $xml = '<?xml version="1.0" encoding="UTF-8"?><urlset>';

           foreach($urls as $url){

               $xml .= '<url>';

               $xml .= '<loc><![CDATA['.$url.']]></loc>';

               $xml .= '<lastmod>'.date('Y-m-d').'</lastmod>';

               $xml .= '<changefreq>monthly</changefreq>';

               $xml .= '<priority>0.8</priority>';

               $xml .= '</url>';

           }

           $xml .= '</urlset>';
           $send .= 'Content-Length:'.strlen($xml)."rn";

           $send .= "Connection: Closernrn";
           $send .= $xml."rn";
           fputs ( $io, $send );
           $return = '';

           while ( ! feof ( $io ) )

           {

               $return .= fread ( $io, 4096 );

           }

           return $return;

       }else{

           return false;

       }

   }

$return = sitemap_ping_baidu(array('http://www.yourdomain.com/a.php?id=1'));

推送后百度会返回的xml文档

 <?xml version="1.0" encoding="UTF-8"?>

     <methodResponse>

         <params>

             <param>

                 <value>

                     <int>200</int>

                 </value>

             <param>

         </params>      

     </methodResponse>

状态码含义如下

200 无使用方式错误,需要进一步观察返回的内容是否正确
400 必选参数未提供
405 不支持的请求方式,我们只支持POST方式提交数据
411 HTTP头中缺少Content-Length字段
413 推送的数据过大,超过了10MB的限制
422 HTTP头中Content-Length声明的长度和实际发送的数据长度不一致
500 站长平台服务器内部错误
PHP 相关文章推荐
PHP数据库开发知多少
Oct 09 PHP
Gregarius中文日期格式问题解决办法
Apr 22 PHP
PHP DataGrid 实现代码
Aug 12 PHP
一些被忽视的PHP函数(简单整理)
Apr 30 PHP
php中DOMDocument简单用法示例代码(XML创建、添加、删除、修改)
Dec 19 PHP
PHP连接MySQL的2种方法小结以及防止乱码
Mar 11 PHP
PHP获取服务器端信息的方法
Nov 28 PHP
php实现字符串首字母大写和单词首字母大写的方法
Mar 14 PHP
提交表单后 PHP获取提交内容的实现方法
May 25 PHP
PHP后台微信支付和支付宝支付开发
Apr 28 PHP
php对xml文件的增删改查操作实现方法分析
May 19 PHP
浅谈PHP错误类型及屏蔽方法
May 27 PHP
php之curl实现http与https请求的方法
Oct 21 #PHP
教你如何开启shopnc b2b2c 伪静态
Oct 21 #PHP
PHP大转盘中奖概率算法实例
Oct 21 #PHP
PHP与MYSQL中UTF8编码的中文排序实例
Oct 21 #PHP
php cookie中点号(句号)自动转为下划线问题
Oct 21 #PHP
微信公众平台网页授权获取用户基本信息中授权回调域名设置的变动
Oct 21 #PHP
php时间戳格式化显示友好的时间函数分享
Oct 21 #PHP
You might like
php中将数组存到文件里的实现代码
2012/01/19 PHP
PHP下打开phpMyAdmin出现403错误的问题解决方法
2013/05/23 PHP
THINKPHP2.0到3.0有哪些改进之处
2015/01/04 PHP
PHP设计模式之装饰器模式实例详解
2018/02/07 PHP
laravel项目利用twemproxy部署redis集群的完整步骤
2018/05/11 PHP
js innerHTML 的一些问题的解决方法
2008/06/22 Javascript
JS 操作符整理[推荐收藏]
2011/11/15 Javascript
jQuery contains过滤器实现精确匹配使用方法
2013/04/12 Javascript
深入探密Javascript数组方法
2015/01/08 Javascript
如何解决easyui自定义标签 datagrid edit combobox 手动输入保存不上
2015/12/26 Javascript
基于jQuery日历插件制作日历
2016/03/11 Javascript
javascript中不易分清的slice,splice和split三个函数
2016/03/29 Javascript
JS/jQ实现免费获取手机验证码倒计时效果
2016/06/13 Javascript
让DIV的滚动条自动滚动到最底部的3种方法(推荐)
2016/09/24 Javascript
JS生成一维码(条形码)功能示例
2017/01/19 Javascript
基于Marquee.js插件实现的跑马灯效果示例
2017/01/25 Javascript
node的process以及child_process模块学习笔记
2018/03/06 Javascript
elementUI table表格动态合并的示例代码
2019/05/15 Javascript
微信小程序批量监听输入框对按钮样式进行控制的实现代码
2019/10/12 Javascript
完美解决vue 中多个echarts图表自适应的问题
2020/07/19 Javascript
vue-cli 3如何使用vue-bootstrap-datetimepicker日期插件
2021/02/20 Vue.js
查看Python安装路径以及安装包路径小技巧
2015/04/28 Python
Python fileinput模块使用实例
2015/06/03 Python
windows 下python+numpy安装实用教程
2017/12/23 Python
python中的字典操作及字典函数
2018/01/03 Python
Python设置在shell脚本中自动补全功能的方法
2018/06/25 Python
Python的UTC时间转换讲解
2019/02/26 Python
python-pyinstaller、打包后获取路径的实例
2019/06/10 Python
如何使用Python多线程测试并发漏洞
2019/12/18 Python
Python如何使用队列方式实现多线程爬虫
2020/05/12 Python
AmazeUI 输入框组的示例代码
2020/08/14 HTML / CSS
DKNY品牌官网:纽约大都会时尚风格
2016/10/20 全球购物
经典优秀个人求职信分享
2013/12/12 职场文书
会计员岗位职责
2014/03/15 职场文书
青年教师师德演讲稿
2014/08/26 职场文书
Java实现贪吃蛇游戏的示例代码
2022/09/23 Java/Android