注册 | 登录 |

百度搜索资源平台如何使用API推送功能

时间:2023-04-17人气:-


1,需要网站制作数据推送接口,进入API推送工具后,会看到接口调用地址的token,token是由16个英文数字组合的字符串

2,下面提供一些推送示例

1)curl推送示例

将要提交的url数据写入一个本地文件,比如urls.txt,每个url占一行,然后调用curl命令:

curl -H 'Content-Type:text/plain' --data-binary @urls.txt

"http://data.zz.baidu.com/urls?site=www.example.com&token=edk7yc4rEZP9pDQD"

使用php、python、java等可以参照这个过程推送结构化数据。

2)post推送示例

POST /urls?site=www.58.com&token=edk7ychrEZP9pDQD HTTP/1.1

User-Agent: curl/7.12.1

Host: data.zz.baidu.com

Content-Length: 83

http://www.example.com/1.html

http://www.example.com/2.html

3)php推送示例

$urls = array(

'http://www.example.com/1.html',

'http://www.example.com/2.html',

);

$api = 'http://data.zz.baidu.com/urls

site=www.58.com&token=edk7ychrEZP9pDQD';

$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;

4)ruby推送示例

require 'net/http'

urls = ['http://www.example.com/1.html', 'http://www.example.com/2.html']

uri = URI.parse('http://data.zz.baidu.com/urls

site=www.xxx.com&token=eTk7ychrWZP1pDQD')

req = Net::HTTP::Post.new(uri.request_uri)

req.body = urls.join("\n")

req.content_type = 'text/plain'

res = Net::HTTP.start(uri.hostname, uri.port) { |http| http.request(req) }

puts res.body

如何查看推送反馈

您可以通过推送后返回的状态码和字段来判断数据是否推送成功。

1,状态码为200,表示推送成功,可能返回以下字段:

字段

是否必选

参数类型

说明

success

int

成功推送的url条数

remain

int

当天剩余的可推送url条数

not_same_site

array

由于不是本站url而未处理的url列表

not_valid

array

不合法的url列表

成功返回示例:

{

"remain":4999998,

"success":2,

"not_same_site":[],

"not_valid":[]

}

2,状态码为4XX或500,表示推送失败,返回字段有:

字段

是否必选

类型

说明

error

int

错误码,与状态码相同

message

string

错误描述

常见的推送失败返回示例说明:

error

message

含义

400

site error

站点未在站长平台验证

empty content

post内容为空

only 2000 urls are allowed once

每次最多只能提交2000条链接

over quota

超过每日配额了,超配额后再提交都是无效的

401

token is not valid

token错误

404

not found

接口地址填写错误

500

internal error, please try later

服务器偶然异常,通常重试就会成功

API推送功能常见问题

1, 和原来的sitemap提交接口有什么区别?

答:状态反馈更及时了,原来提交后需要登录到搜索资源平台查看提交是否成功。目前只要根据提交后返回的数据就可以判断了。

2, 已经存在的提交sitemap数据的程序代码需要做什么修改?

答:主要修改两点。第一点,提交的接口需要修改;第二点,需要处理下接口返回的信息,失败后需要根据错误进行相应处理,报错的链接是无法提交成功的

3,为什么提交成功后看不到数据变化?

答:我们反馈的是新提交链接的数量,如果您提交的链接在之前提交过(即重复提交)是不会被统计到的

4,在什么时机使用API推送提交功能效果最明显?

答:页面链接产生或发布时立即提交,这样效果是最好的

5,每次提交一条数据和多条数据有什么区别?

答:没有区别

6,重复提交已经发布的链接会有什么问题?

答:会有两个影响。第一,将浪费您提交的配额,每个站点每天可提交的数量是有限制的,如果您都提交了旧链接,当有新链接时可能因为配额耗尽无法提交。第二,如果您经常重复提交旧链接,我们会下调您的配额,您可能会失去API推送功能的权限

7,API推送可以推多少条链接?

答:API推送可提交的链接数量上限是根据您提交的新产生有价值链接数量而决定的,百度会根据您提交数量的情况不定期对上限额进行调整,提交的新产生有价值链接数量越多,可提交链接的上限越高。

来源:百度搜索资源平台 百度搜索学堂


特别声明:以上内容(如有图片或视频亦包括在内)为本平台用户上传并发布,本平台仅提供信息存储服务。


上篇:什么是Sitemap

下篇:百度搜索资源平台如何选择普通收录方式