对于百度熊掌号专业问答的URL推送,百度提供了多种URL推送方式,之前详细写过怎样通过CURL命令方式推送,但是后来百度修改了api地址,URL中出现了汉字,CURL方式推送就会报错,下面php中文网(www.php.cn)为大家介绍另外一种比较简便的方法推送:PHP方式,请各位站长门参考(懂PHP技术的请略过~~)
第一步:页面改造
详情可以直接查看百度熊掌号后台,搜索资源移动专区中专业问答模块。
第二步:API提交
PHP推送示例:
具体步骤:
1. 首先我们将以下代码保存为一个PHP文件,命名比如baiduxiongzhang.php。
注:其中$api参数需要修改为你自己的接口数据。
大家把以下完整代码,复制保持为.php文件格式,然后把里面的api地址换成自己的,就可以啦!(适合单个URL提交)
<?php $url = isset($_GET['url']) ? $_GET['url'] : ''; if(!$url){ echo '没有地址参数';exit; } $urls = array(0=>$url); $api = 'http://data.zz.baidu.com/urls?appid=xxxx&token=xxxx&type=qa&domain=教育'; $ch = curl_init(); $options = array( CURLOPT_URL => $api, CURLOPT_POST => true, CURLOPT_RETURNTRANSFER => true, CURLOPT_POSTFIELDS => implode("\n", $urls), CURLOPT_HTTPHEADER => array('Content-Type: text/plain'), ); curl_setopt_array($ch, $options); $result = curl_exec($ch); echo $result;
2. 然后将baiduxiongzhang.php上传到网站根目录下,并在浏览器上访问此PHP文件,会出现如下所示:
3. 我们再通过以下链接实现专业问答推送:
http://www.xxx.com/baiduxiongzhang.php?url=
推送链接的格式是:你的网站域名 + baiduxiongzhang.php?url=要推送的文章或页面链接
比如我们要推送这个页面:m.php.cn/tags/tag-applet.html,就可以在按如下所示进行推送
http://www.xxx.com/baiduxiongzhang.php?url=m.php.cn/tags/tag-applet.html
4. 成功推送后,返回如下信息:
附:上述PHP代码说明:
首先我们通过isset函数初始化推送链接,如果没有设置参数则返回上图中“没有地址参数”的信息,再用curl_init()函数初始化cURL会话。并且设置option参数的值如下:
CURLOPT_URL: 这是你想用PHP取回的URL地址。
CURLOPT_POST:设置为TRUE 时表示会发送 POST 请求,类型为:application/x-www-form-urlencoded,也是 HTML 表单提交时最常见的一种。
CURLOPT_RETURNTRANSFER :设置为true表示将curl_exec()获取的信息以字符串返回,而不是直接输出。
CURLOPT_POSTFIELDS : 传递一个作为HTTP “POST”操作的所有数据的字符串。
CURLOPT_HTTPHEADER:设置自定义HTTP标头
最后通过curl_setopt_array函数为cURL传输会话批量设置选项,以及通过curl_exec函数执行cURL会话。
那么专业问答成功推送后,反馈的参数表示:
success、success_qa:表示成功推送的url条数
remain、remain_qa:表示当天剩余的可推送url条数
相关推荐:
1.《百度熊掌号资源平台URL链接提交使用curl命令推送示例(安装配置图文步骤)》
2. 《2019 PHP视频教程》
Atas ialah kandungan terperinci 百度熊掌号专业问答PHP方式推送完整代码(附说明). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!