本站被百度搜录率太低了,于是查找资料发现 百度有新站点保护和url主动推送功能。
然后找到了百度搜索资源平台 https://ziyuan.baidu.com/linksubmit/index?site=
新站点保护 主要是添加 站点域名 ,然后添加meta 代码验证站点 比较简单这里不介绍了
url 主动推送:
添加站点后 百度会生成站点推送 接口,如
http://data.zz.baidu.com/urls?site=yy123.ink&token=your token
使用post方式
,设置Content-Type: text/plain
进行提交
自动问题:
1、如何获取url
2、何时进行提交
3、如何防止重复提交
本站使用的思路是:前端vue路由跳转完成后调用后台接口提交当前站点 location.href 给后台,后台提交地址给百度,成功则保存记录,防止二次提交。
本站使用代码如下:
前端:
router.afterEach((to, from) => {
axios.get('/baidu/urlSubmit', {params: {url:location.href}}).then(res => {});
});
后端提交url (python):
@app.route('/baidu/urlSubmit')
def urlSubmit():
try:
ul = request.args.get("url")
us = UrlSubmit()
result = UrlSubmit.query.filter_by(url=ul, success='Y').all()
if len(result) <= 0:
us.url = ul
us.createAt = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
postUrl = 'http://data.zz.baidu.com/urls?site=yy123.ink&token=you site token'
resp = requests.post(postUrl, data=ul,
headers={'Content-Type': 'text/plain'})
if json.loads(resp.text).get('success') > 0:
us.success = 'Y'
db.session.add(us)
db.session.commit()
except Exception as ex:
print(str(ex))
app.logger.error("wechat exception", exc_info=True)
return jsonify("")