如何从ISBNdb.com获取图书的类别信息?

cod*_*ama 2 api isbn

我能够轻松获得图书信息:

http://isbndb.com/api/books.xml?access_key=THEKEY&results=details&index1=isbn&value1=9781849152990
Run Code Online (Sandbox Code Playgroud)

我可以轻松查找类别:

http://isbndb.com/api/categories.xml?access_key=Z&index1=category_id&value1=science.mathematics.geometry 
Run Code Online (Sandbox Code Playgroud)

但是你怎么得到某本书的类别?我想提供ISBN代码,作为回报我想获得类别?

bla*_*lah 8

查看他们的API文档并稍微讨论一下,看来您可以做的最好的事情是获取该书主题的列表,然后获取这些主题的类别.

所以,举个例子,给出一个0061031321的ISBN,你先打个电话

http://isbndb.com/api/books.xml?access_key= $ Z&results = subject&index1 = isbn&value1 = 0061031321

返回

<BookData book_id="thief_of_time" isbn="0061031321" isbn13="9780061031328">
<Title>Thief of time</Title>
<TitleLong>Thief of time: a novel of Discworld</TitleLong>
<AuthorsText>Terry Pratchett</AuthorsText>
<PublisherText publisher_id="harpertorch">New York, N.Y. : HarperTorch, [2002], c2001.</PublisherText>
<Subjects>
<Subject subject_id="discworld_imaginary_place_fiction">Discworld (Imaginary place) -- Fiction</Subject>
<Subject subject_id="fantasy_fiction_aaaa0">Fantasy fiction</Subject>
</Subjects>
</BookData>
Run Code Online (Sandbox Code Playgroud)

然后你遍历主题,得到他们的类别:

http://isbndb.com/api/subjects.xml?access_key= $ Z&results = categories&index1 = subject_id&value1 = discworld_imaginary_place_fiction

<...snip...>
<Categories>
<Category category_id="imaginary_places">Imaginary Places</Category>
<Category category_id="imaginary_places.discworld">Discworld</Category>
</Categories>
<...snip...>
Run Code Online (Sandbox Code Playgroud)

http://isbndb.com/api/subjects.xml?access_key= $ Z&results = categories&index1 = subject_id&value1 = fantasy_fiction_aaaa0

<...snip...>
<Categories>
<Category category_id="genres.fantasy">Fantasy</Category>
</Categories>
<...snip...>
Run Code Online (Sandbox Code Playgroud)

所以ISBN 0061031321的分类是:

  • 虚构的地方
  • 碟形世界
  • 幻想

categories.xml如果你想获得整个类别层次结构,可以通过api 追踪这些.