网站站长都知道,百度收录提交有3种方式:手动提交、sitemap提交和API提交。下面给大家介绍一下这3种方式的各自特点,然后重点介绍一下如何利用API提交实现自动定时提交
第一种:手动提交
手头提交适合于网站内容不定期不定时的更新,简单说对于网站的内容维护没什么规划,对于网站的内容建设没有什么目标,想起来就写篇文章提交收录一下,想不起来就不写了,对于没有开发能力的小网站站长比较适合。下面手动提交的界面截图:
举个例子,拿电缆桥架厂家这个网站来说,网站的域名为http://www.jywy.bj.cn,比如今天发了一篇文章,文章URL地址为
http://www.jywy.bj.cn/index.php?s=/Show/index/cid/8/id/422.html,对应手动提交步骤如下:
第1步:把URL添加到链接地址列表
第2步:点击提交按钮
第3步:完成安全验证
第4步:查看操作结果,一种是链接提交成功(如下图),还有一种是操作不成功,例如超过每天提交数量的上限等各种原因。
第二种:sitemap提交
适合网站内容的全量提交或者批量提交,例如新建网站的第一次全量提交,或者每隔一段时间对网站新增内容进行一次批量提交,有开发能力的站长可以选择自己开发程序生成sitemap.xml或sitemap.txt。sitemap.xml内容样式可以访问这个地址http://www.jywy.bj.cn/sitemap.xml查看,sitemap.txt的内容样式可以访问这个地址http://www.jywy.bj.cn/sitemap.txt查看,没有开发能力的也可以选择用现成的工具软件来生成,工具软件推荐SiteMapX.exe
第三种:API提交
利用百度提供的API接口进行内容URL提交,接口调用地址格式示例如下:
例如你的网站为电缆桥架这个,域名为www.jywy.bj.cn,那么对应API调用地址为:
http://data.zz.baidu.com/urls?site=www.jywy.bj.cn&token=token_value
其中site参数值 www.jywy.bj.cn,需要根据不同网站的域名来替换
其中token参数值token_value,需要根据不同网站生成的密钥进行替换。
接口调用方式有很多种类,可以直接使用curl命令进行提交,示例如下:
也可以使用各种编程语言例如php、python、java等提交post请求进行提交,下面以python语言举例:
下面为核心提交示例代码
# 提交收录
def commitSiteRecord(apiurl):
myframe.loadRecordUrlFile()
externallinkary= myframe.nowtask_recordurllist.split(";")
# 提交收录
headers = {
'User-Agent': 'curl/7.12.1',
'Host': 'data.zz.baidu.com',
'Content - Type': 'text / plain',
'Content - Length': '83'
}
post_baidu_uri = apiurl
# 将列表进行拼接
post_data = '\n'.join(externallinkary)
response = requests.post(url=post_baidu_uri, headers=headers, data=post_data)
req = response.text
if "success" in req:
req_json = json.loads(req)
my_logger_info(logger,"百度推送成功%d条,剩余%d条可推送" % (req_json['success'],req_json['remain']))
else:
my_logger_info(logger,"百度推送失败!")
# 支持人工停止刷量
if (myframe.stop_refresh_page_thread):
my_logger_info(logger, "已经停止提交收录")
如果想做到定时自动提交,自动读取最新地址文件,可以加入定时器、自动更新文件代码,最终示例界面如下: