如何让百度搜索引擎爬取、收录被部署在 Github pages 上的 Hexo博客链接

更新日期: 2020-01-14阅读: 1.9k标签: Hexo

1. 场景描述

当我们提交 sitemap.xml 文件给百度时,提示抓取失败,并且错误信息如下:

连接超时

DNS解析ip地址:185.***.***.153

抓取机房:联通

UA:Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)

HTTP状态码:403

修改建议

请确保sitemap地址正确,再重新提交。

这是因为把 Hexo 部署在 Github pages 上时,百度的爬虫是被屏蔽的。为了保证我们能够被百度搜索引擎正常收录,于是产生了这个小工具

其工作模式是采用百度提供的另一种方式「主动推送」,步骤:

  1. 读取生成的 sitemap.xml 文件中的链接;

  2. 调用百度分配的接口进行实时提交。

关于接口的详细说明,参见这里:https://ziyuan.baidu.com/college/courseinfo?id=267&page=2#h2_article_title9

注意:这个 sitemap.xml 文件的生成可以使用 Hexo 插件 npm install hexo-generator-baidu-sitemap --save,添加相关配置后,每次 hexo g -d 则会自动更新 sitemap.xml 文件。


2. 使用方式

php 版本(后期提供 Java、Python 版本)

  1. 修改配置
// baidusitemap.xml 路径,这里不配置的话,可以在调用的时候动态传参
$sitemapPath  =  '';

// 推送接口,详见 https://ziyuan.baidu.com/linksubmit/index?site=xxxxxx
// 这里的 xxxxxx 是你提交到百度的博客地址
$site  =  '';
$token  =  '';
  1. 命令行调用
php BaiduSitemapPush.php

源码地址:hexo-baidu-sitemap-push

链接: https://www.fly63.com/article/detial/7263

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!