Categories


Tags


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

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推送可提交的链接数量上限是根据您提交的新产生有价值链接数量而决定的,百度会根据您提交数量的情况不定期对上限额进行调整,提交的新产生有价值链接数量越多,可提交链接的上限越高。

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


Public @ 2017-02-21 16:02:30

什么是ETag?ETag作用有哪些

ETag是HTTP协议中的一个响应头部字段,用于标识HTTP请求的资源版本。一般由服务器生成,类似于一个唯一标识符,与该资源的内容相关联。ETag的值可以是任何由服务器生成的标识符,例如文件的修改时间戳、哈希值等。 ETag的主要作用有以下几个: 1. 缓存控制:当客户端请求资源时,客户端可以与服务器之间比较ETag的值来判断资源是否过期。如果ETag值相同,则表明资源没有发生变化,客户端可以

Public @ 2023-03-28 23:50:29

百度搜索资源平台-搜索资讯合作页上线公告

一直以来,为了更好的提升百度App中的用户搜索体验,百度搜索会不断地根据用户反馈、用户调研以及产品的迭代来升级产品策略、优化功能细节。针对用户反馈的在百度App中搜索关键词并跳转后会遇到页面显示、组件兼容以及广告体验等各种浏览体验不佳的问题,百度搜索计划在12月初上线搜索资讯合作页,对该类页面进行统一升级,优化页面排版、交互,以提升用户搜索和浏览的整体体验。搜索资讯合作页服务升级声明1.资讯合作页

Public @ 2013-06-13 16:05:28

什么是 OpenCard

OpenCard是一种Java智能卡架构规范,它旨在为多种智能卡提供一个开放的、标准化的API,从而使智能卡应用程序的开发者可以编写可移植、可扩展、可靠的应用程序。OpenCard提供了一个通用的Java Card API,并允许Java应用程序通过标准的Java API直接访问智能卡上的数据。由于它的开放性和标准化,OpenCard被广泛应用于金融、电子政务、安全认证等领域。

Public @ 2023-06-20 09:00:09

什么是站点关联主体?

站点关联主体指的是一组互相关联的网站、应用程序或其他数字内容,这些网站、应用程序或数字内容被设计为为同一目的服务,共享相同的主题、目标和用户。站点关联主体可以由一个组织、一个公司、一个品牌、一个产品或一个服务所拥有和管理。例如,亚马逊的站点关联主体是由亚马逊公司所有和管理的网站和应用程序组成,其中包括亚马逊购物网站、Prime会员服务、Kindle电子阅读器等。

Public @ 2023-04-28 08:50:05

更多您感兴趣的搜索

0.535488s