用 ISBN 抓書本封面

今天在玩 DokuWiki,看到有一個 ISBN 的 Plugin,可以用 ~~ISBN: [ISBN] ~~ 這樣加入書籍的封面,並連到 Amazon 的頁面。不過,中文的書籍大部份在 Amazon 都找不到,所以我就做了一個可以從博客來網路書店抓圖的程式。

程式的邏輯很簡單:判斷 ISBN Country Code,台灣和中國共用 957 和 986 這兩個編號,所以如果是這兩區就送到博客來去查詢;反之則送到 Amazon 去。為了禮貌,程式中也加入了 Cache 機制,以免對兩家書商造成困擾。目前 Cache 利用 ISBN 尾碼分散,短時間來說應該是不會有問題;不過還沒有實作 Cache Expire 機制(需要嗎?) 程式可以在這裡下載。

如果你只是想利用 ISBN 查詢書名,那不需要自己安裝一個。您可以利用 https://pesty.yichi.org/ISBN/ 來查詢,例如您要查詢 ISBN 是 9572231588 的書籍,只要程式去抓取 https://pesty.yichi.org/ISBN/?isbn=9572231588 的資料,就會回傳回兩行資料(以 n 分隔),第一行是書本的 URL,第二行是圖片網址,如果找不到則送出 HTTP 404 Error。回傳結果利用 PHP or PERL 都很好處理,就不在此多作說明了。

我不知道博客來是否有提供額外的 API,如果有的話希望知道的網友告訴我一聲以便改寫。我不太清楚他們是否歡迎這樣的行為,如果不歡迎的話….那我們再來幫其他網路書店創造來客吧 :p

做出來的結果請參考: 這裡

有問題請留言。

Advertisements

2 thoughts on “用 ISBN 抓書本封面

  1. Pingback: Intermap of Books - LemonWiki

  2. Pingback: Anonymous

Comments are closed.