前言

原先使用的Yikun/hexo-generator-douban在豆瓣封了API之后,就彻底没法用了。另外一个插件mythsman/hexo-douban是靠解析网页来生成读书列表,还能工作。就决定换用mythsman/hexo-douban来生成读书列表。
以下记录插件替换的过程。

配置变更

hexo的配置_config.yml

原先为:

1
2
douban:
user: jibing57

修改为

1
2
3
4
5
6
7
douban:
user: jibing57
builtin: false
book:
title: '豆瓣读书记录'
quote: '不完全的读书记录,因为好久才会想起要去豆瓣去点亮一下。'
timeout: 10000

主题配置修改

主题freemind下的配置themes/freemind/_config.yml
原先为:

1
2
3
4
5
6
menu:
...
- title: Douban
url: douban
intro: "Douban"
icon: "fa fa-book"

修改为:

1
2
3
4
5
6
menu:
...
- title: Douban
url: books
intro: "Douban"
icon: "fa fa-book"

package.json修改

项目package.json中, 去除原先的hexo-generator-douban, 添加hexo-douban
原先为:

1
2
3
4
5
6
7
8
{
...
"dependencies": {
...
"hexo-generator-douban": "git+https://github.com/jibing57/hexo-generator-douban.git",
...
}
}

修改为:

1
2
3
4
5
6
7
8
{
...
"dependencies": {
...
"hexo-douban": "^1.1.3",
...
}
}

hexo-douban 使用方法

安装方法:

1
$ npm install hexo-douban --save

用法:

1
2
3
4
5
6
7
8
9
10
$ hexo douban -h
Usage: hexo douban
Description:
Generate pages from douban
Options:
-b, --books Generate douban books only
-g, --games Generate douban games only
-m, --movies Generate douban movies only

发布方式改变

因为hexo doubanhexo deploy的前缀都是hexo d, 因此发布时不能使用简写hexo d而要使用完整形式hexo deploy

本地debug

1
hexo clean && hexo douban && hexo s --debug

服务器发布

1
2
hexo clean && hexo douban && hexo generate
hexo deploy

页面预览

替换后,博客的豆瓣读书页面就活过来了。
hexo-douban_books_pages.png

题外话

豆瓣当时免费提供API出来供大家调用查询自己的资源时,肯定是抱着服务大众的情怀的。后续被大家不守规矩地乱用,不停的被爬后,慢慢就停掉了原先对外提供的API。
关于互联网的使用,大家都已经习惯了由雅虎开创,谷歌发展的免费模式。通过羊毛出在猪身上这种方式,慢慢养叼了互联网网民。但实际上任何资源的使用都是有成本的,有价值的产品,在基础功能免费的基础上,带有一些付费的feature,也是值得考虑的一种模式。

延伸阅读

留言