百度快速收录文章抓取链接有四种方式
1、自动推送(百度已停用)
2、Sitemap
可以定期将网站链接放到Sitemap中,然后Sitemap提交给百度。百度会周期性地抓取检查站长提交的Sitemap,对其中的链接进行处理。
文件地址格式为txt或xml,每个地址文件最多包含50,000个网址且需小于10MB。
sitemap提交工具仅对已验证站点开放使用,开发者无法提交同一主域下其他未验证站点的数据。
请勿提交索引型sitemap,索引型不予处理,且若存在索引型sitemap,将不允许提交新文件;请删除索引型sitemap后再尝试提交数据。
3、API主动推送
是最为快速的提交方式,将站点当天新产出链接立即通过此方式推送给百度,可以保证新链接可以及时被百度收录。
4、手动提交
如果你不想通过程序提交,你可以用这种方式手动提交链接到百度。
请在输入框中填写当前选择站点的链接;如需提交其他验证站点链接,请选择对应的站点
您每次最多可提交20条链接,每行一条
仅支持页面对应链接的提交,不支持sitemap形式的文件提交
百度自动推送文章收录怎么做
百度站长平台提供链接索引,api提交。
接口调用地址:http://data.zz.baidu.com/urls?site=https://www.365jz.com&token=xQgdfR1gcTkcDYZQ
参数名称 | 是否必选 | 参数类型 | 说明 |
---|---|---|---|
site | 是 | string | 在搜索资源平台验证的站点,比如www.example.com |
token | 是 | string | 在搜索资源平台申请的推送用的准入密钥 |
下面提供一些推送示例
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推送可提交的链接数量上限是根据您提交的新产生有价值链接数量而决定的,百度会根据您提交数量的情况不定期对上限额进行调整,提交的新产生有价值链接数量越多,可提交链接的上限越高。
如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛