改章节是一篇关于插件网站的帖子
原文地址:http://cuipengfei.me/blog/2013/04/01/doubanebookprice/
为什么要做这款插件?
在豆瓣上查看一本书的时候,页面的右侧会表现哪些网站可以购置该书以及各自的价格。 比如这本《乡关何处》,页面右侧表现了亚马逊,京东,铛铛等网站的购置链接。
但是豆瓣只会提供纸质书的购置链接,不提供电子书的。除非该书豆瓣自己有售。 所以我写了个Chrome的插件来处理这个问题。
这款插件怎么用?
这款插件会在每个图书页面上添加正版电子书的购置链接及其价格。您只需点击链接去购置就好了。
在Chrome中加载这个插件以后,再访问豆瓣的《乡关何处》的页面,右侧会多出三个链接:
淘宝,多看和亚马逊中文站都卖这本书的电子版。 看,纸质书要卖19.2,豆瓣电子书要卖11,多看只要6块钱,噢耶!节俭纸张又省钱。
很多英文原版书在海内卖得很贵,所以这款插件也支持一些外洋网站。 比如这本《The Pragmatic Programmer》:
原版纸质书亚马逊要卖351,澜瑞外文要卖487,吃人啊!亚马逊英文站的纸质版的售价折合成人民币也要180多,再加运费……
而电子版则要便宜很多,看截图上的红圈,最便宜的折合人民币只要130左右,嗯,还是有点贵,不过如果想读原版的话,这个kindle版是最好的选择了。
这款插件现在支持以下的电子书销售商:
- 多看
- 唐茶
- 亚马逊kindle中文站
- 淘宝
- 京东
- 亚马逊kindle美国站
- kobo
- nook
如何实现的?
是用JavaScript写的。
基本实现思路是这样的:
- 获得当前图书的ISBN号码
- 根据ISBN去下面罗列的几家网站上搜索是否有这本书
- 如果有的话,表现在右侧
例外情况:
- 有些网站不支持ISBN搜索,对于这些网站直接用书名和作者名搜索的,所以结果有时不太准。
- 有时一本书的纸质版的ISBN和电子版的ISBN不同,所以实现顶用到了google books的API来获得电子版的ISBN,然后再搜索。
重要技巧: knockoutjs和jQuery。
插件下载和源码
插件下载地址:chrome store
源码:github
Disclaimer
插件的实现中背反了豆瓣API的协议(豆瓣不允许其API的使用者利用豆瓣的数据产生其他网站的购置信息)。如果您对这点很敏感,请慎用。
文章结束给大家分享下程序员的一些笑话语录: 程序员喝酒
我偶尔采用“木马策略”、“交叉测试”,时间不长就开始“频繁分配释放资源”,“cache”也是免不了的了,
不过我从不搞“轮巡”,也不会“捕获异常”,更不会“程序异常”,因为我有理性
克制的。