github.com/Yukaii
Daily Oops

Daily Oops!

https://yukai.dev/blog/2015/02/19/campusbooks-com-api-usageCampusBooks.com API 使用記錄https://fed.brid.gy/
February 19, 2015

CampusBooks.com API 使用記錄

好久不見!忙裡偷閒的來篇小記,重理思路再出發。

近一兩個月都在都在處理跟書相關的事,畢竟也算半個書商了,在書籍資料搜尋上,和大家介紹個好站。

簡介

CampusBooks.com,據說也是做 SEO 的公司起家,透過此網站,你可以方便的搜尋各類教科書的資料,書名作者 isbn 都基本,還可以直接顯示在各大書店價錢:

螢幕快照 2015-02-19 下午9.17.53.png

Google 得知他也是有開放 api 的,只是要合作才能申請 API key,想想也沒美國時間,就 inspect 了一下他的網站,發現十分工整 rest url:

螢幕快照 2015-02-16 下午2.55.17.png

就直接拿 api key 來用了哈哈。

SITE_API_KEY = PA52HnTGaTSyizTOq4j1

API

對照了網路上僅存的第三版 api document 看,先列出幾個基本的,有需要再慢慢找啦:

透過 isbn 拿書資料

GET http://api2.campusbooks.com/13/rest/bookinfo?key=API_KEY_HERE&isbn=xxxxxxx&format=json

可以把 json response 打開,否則預設是 xml:

&format=json

範例結果:

{
"response": {
"status": "ok",
"version": "13",
"label": {
"plid": "0",
"name": "CampusBooks.com",
"website_id": "0",
"website_name": "CampusBooks.com"
},
"page": {
"name": "books",
"f": "search",
"books": {
"page": 1,
"limit": 1,
"results_returned": 1,
"total_pages": 1,
"total_results": 1,
"book": [
{
"isbn10": "1111570051",
"isbn13": "9781111570057",
"author": "",
"binding": "Paperback",
"edition": "",
"image": {
"width": 60,
"height": 75,
"image": "http://ecx.images-amazon.com/images/I/51XzAECQ6xL._SL75_.jpg"
},
"msrp": 97.62,
"pages": "",
"publish_date": "",
"publisher": "Example Product Manufacturer",
"rank": 1603132,
"rating": 0,
"title": "Brief Applied Calculus. James Stewart, James Stewart, Dan Clegg"
}
]
}
}
}
}

拿書價格

把 price field 打開

GET http://api2.campusbooks.com/13/rest/bookinfo?key=API_KEY_HERE&isbn=xxxxxxx&format=json&f=prices

輸出有點長就不貼了。

小結

根本沒長到需要寫小結啊(飛踢)

如果沒差舊版的 API 文件太多,其他還有 search / bookprices 可以用,不過我沒有用到就暫時不寫了。

基本上 campusbooks 的書是非常齊全了,他們有從 1998 開始的資料,OpenLibrary 有些找不到的書,這裡都找的到;順帶一提,OpenLibrary 也有好用的 api,也有 ruby gem,就單本書的資料上會比 campusbooks 更齊。

新年第一篇文,就祝大家新年快樂啦!

https://fed.brid.gy/
本篇文章驕傲的使用 HackMD 發佈
Yukai Huanghttps://yukai.dev

Hi

This is Yukai Huang's personal website.

Here you can read my recent posts, play with my side projects before, or get to know me more.

安久吧!

https://fed.brid.gy/