Hexo系列:(四)Hexo博客提交百度和Google收录

站点地图

站点地图是一个页面,上面放置了网站上需要搜索引擎抓取的所有页面的链接

为你的Hexo博客生产站点地图

进入Hexo博客根目录,安装百度和Google的站点地图生成插件

1
2
npm install hexo-generator-baidu-sitemap --save
npm install hexo-generator-sitemap --save

在博客根目录的_config.yml配置文件种添加一下代码

1
2
3
4
5
# 自动生成sitemap
sitemap:
path: sitemap.xml
baidusitemap:
path: baidusitemap.xml

编译部署博客代码

1
2
hexo generate
hexo deploy

你会发现你的博客编译完成的代码目录public种生成了baidusitemap.xmlsitemap.xml
此时我们访问域名我下面的这两个文件,看看有没有

Googlesitemap

百度和Google的爬虫就可以通过这个来爬取你的博客内容了
注:下面的步骤会用到这两个文件

查看博客是否已经被收录

在百度和Google分别输入搜索:

1
site:svend.cc

注:这里需要将svend.cc换成你们自己的域名

查看百度是否收录博客

查看Google是否收录博客

百度验证网站

  • 百度站点提交入口

    提交链接到百度

    提交链接到百度

    添加站点

    提交链接到百度

    验证站点

    提交链接到百度

    下载百度验证文件,放到博客域名根目录,这里可以放到主题下面的source下themes/next/source

    提交链接到百度
    1
    2
    3
    为什么放到主题的source下而不直接放在站点source下面呢?
    因为站点source下面的html文件都会被按照主题样式重新渲染,最后html文件的内容会被改变,百度验证就不能识别。
    虽然可以更改html文件让主题不去重新渲染此html文件,但我认为直接放到source下面不去更改文件内容更方便

放置完成之后,执行命令将文件部署到服务器(Coding和GitHub)上

1
2
hexo generate
hexo deploy

部署完成之后点击立即验证或者直接访问,域名/百度验证文件名

http://svend.cc/baidu_verify_gw7pXzPYp6.html

提交链接到百度
访问正常,并且除了一串代码意外没有其他任何东西就可以了,点击完成验证
提交链接到百度

百度网页抓取

进入链接提交,选择自己的站点

提交链接到百度

提交博客链接到百度

1
2
3
4
5
6
如何选择链接提交方式
1、主动推送:最为快速的提交方式,推荐您将站点当天新产出链接立即通过此方式推送给百度,以保证新链接可以及时被百度收录。
2、自动推送:最为便捷的提交方式,请将自动推送的JS代码部署在站点的每一个页面源代码中,部署代码的页面在每次被浏览时,链接会被自动推送给百度。可以与主动推送配合使用。
3、sitemap:您可以定期将网站链接放到sitemap中,然后将sitemap提交给百度。百度会周期性的抓取检查您提交的sitemap,对其中的链接进行处理,但收录速度慢于主动推送。
4、手动提交:一次性提交链接给百度,可以使用此种方式。

sitemap提交

这个时候需要用到第一步生产的sitemap了。选择自动提交种的sitemap,将http://svend.cc/baidusitemap.xml粘贴到输入框内,输入验证码,点击提交。
下面的列表就会出现你添加的sitemap链接了,这个时候状态栏显示的应该是等待,一般过几十秒刷新一下页面就会正常,然后百度就会自动的周期抓取你的sitemap

提交链接到百度

下面是我的提交情况
提交链接到百度

自动推送

安装自动推送JS代码的网页,在页面被访问时,页面URL将立即被推送给百度。

自动推送代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<script>
(function(){
var bp = document.createElement('script');
var curProtocol = window.location.protocol.split(':')[0];
if (curProtocol === 'https') {
bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';
}
else {
bp.src = 'http://push.zhanzhang.baidu.com/push.js';
}
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(bp, s);
})();
</script>

可以将上面代码添加到post模板中,这样每篇文章生成的时候都会有自动推送代码。
最直接的就是直接添加到主题目录下的layout/post.swig文件下

自动推送链接到百度

注:我使用的是next主题,主题已经默认集成了自动推送代码,只需要将主题的_config.yml文件中的baidu_push: false改为baidu_push: true

主动推送

主动推送最为快速的提交方式,是被百度收录最快的推送方式
百度提供了主动推送的示例:支持curlphppythonjavaphpruby等等方式,你可以自己选择一种进行主动推送
具体使用帮助请看主动推送教程

我正在开发一个Java版本的主动推送软件,暂时还没完成。敬请期待~完成了会立马更新上来

Java版本百度站长主动提交链接工具–BaiduPush诞生
详情请看百度站长主动提交链接工具–BaiduPush

Google验证网站

添加站点

提交链接到Google

验证站点

提交链接到Google

下载Google验证文件,放到博客域名根目录,这里可以放到主题下面的source下themes/next/source

提交链接到Google

放置完成之后,执行命令将文件部署到服务器(Coding和GitHub)上

1
2
hexo generate
hexo deploy

部署完成之后点击立即验证或者直接访问:域名/Google验证文件名

http://svend.cc/googlea249058410be3808.html

提交链接到Google
访问正常,并且除了一串代码意外没有其他任何东西就可以了,点击完成验证

Google网页抓取

sitemap

进入刚刚添加的网站的站点地图操作界面,添加站点地图,输入第一步生产的站点地图链接,因为这里默认已经有了域名,所以只需要输入sitemap.xml,然后点击提交就好了。
完成之后下面列表同样会出现刚刚添加的sitemap地址,Google也会周期性的抓取

提交链接到Google

完成

呼~花了俩小时终于写完了,我最开始也是为了搞这个收录搞了几天时间,Google收录很快,因为百度爬虫被GitHub给屏蔽了,所以一直不能收录。
最后知道原因之后就有了Hexo系列:(三)Hexo博客部署到GitHub和Coding,国内访问Coding之后,
终于百度开始收录了,不过新站点想被收录和不被K站的话,还是要保证博客文章的质量的。加油~不要急哦!被百度收录还是需要几天时间的

坚持原创技术分享,您的支持将鼓励我继续创作!