查找一本书的版本

时间:2010-09-04 21:06:44

标签: api amazon-web-services amazon isbn

有没有办法使用亚马逊产品广告API查找基于其ISBN的书籍的各种版本?

而且,更一般地说,在书上查找版本元数据的各种选择是什么?我所知道的只有一个是来自worldcat的xISBN api

在我的网站上,当人们搜索图书时,我们有一个“更多版本”按钮..所以我会做很多查询(并缓存它们)。

5 个答案:

答案 0 :(得分:4)

你可以使用OCLC的xISBN API - 给它一个ISBN,它会为你提供一组相同“工作”的所有ISBN - 其他版本,翻译等。它会给你这样的东西:< / p>

<?xml version="1.0" encoding="UTF-8"?>
<rsp xmlns="http://worldcat.org/xid/isbn/" stat="ok">
    <isbn form="BA" year="2004" lang="eng" ed="2nd ed.">0596002815</isbn>
    <isbn form="BA DA" year="1999" lang="eng">1565928938</isbn>
    <isbn form="BA" year="1999" lang="eng" ed="1st ed.">1565924649</isbn>
</rsp>

不幸的是,它不是免费的。 Here is the pricing

答案 1 :(得分:3)

看看https://sourceforge.net/projects/isbntools/files/latest/download。命令isbn editions ISBN会给你你想要的东西......

如果您是开发人员,则拥有https://pypi.python.org/pypi/isbntools

答案 2 :(得分:3)

这个问题已经过时了,但为了完整起见,我要补充一点,亚马逊产品广告API确实提供了查找图书其他版本(和ISBN编号)的方法,但这涉及两个{{1} }查询:

  • 获取父项的ASIN的第一个查询,亚马逊称其为 Authority Non Buyable ;这是一个没有产品页面的虚拟产品,只是儿童产品的容器。
  • 第二个查询,列出该父项的子项。

两个查询都必须包含以下参数:

  • ItemLookup
  • ResponseGroup=RelatedItems,ItemAttributes

带有ISBN编号的第一个查询如下所示:

RelationshipType=AuthorityTitle

...&IdType=ISBN&ItemId=9780345803481

第二个查询是使用第一个查询<RelatedItems> <Relationship>Parents</Relationship> <RelationshipType>AuthorityTitle</RelationshipType> <RelatedItemCount>1</RelatedItemCount> <RelatedItemPageCount>1</RelatedItemPageCount> <RelatedItemPage>1</RelatedItemPage> <RelatedItem> <Item> <ASIN>B0058NLWEC</ASIN> ... </Item> </RelatedItem> </RelatedItems> 返回的父ASIN执行的:

B0058NLWEC

...&IdType=ASIN&ItemId=B0058NLWEC

这列出了亚马逊所知的本书的所有版本:精装本,平装本,Kindle,有声读物,......

答案 3 :(得分:2)

ISBN DB提供a remote access API,它将返回格式化为XML的各种元数据。从浏览其网站上的条目,一些ISBN条目也包括版本信息。

查看此API样本回复:

<?xml version="1.0" encoding="UTF-8"?>
<ISBNdb server_time="2005-07-29T03:02:22">
 <BookList total_results="1">
  <BookData book_id="paul_laurence_dunbar" isbn="0766013502">
   <Title>Paul Laurence Dunbar</Title>
   <TitleLong>Paul Laurence Dunbar: portrait of a poet</TitleLong>
   <AuthorsText>Catherine Reef</AuthorsText>
   <PublisherText publisher_id="enslow_publishers">
    Berkeley Heights, NJ: Enslow Publishers, c2000.
   </PublisherText>
   <Summary>
    A biography of the poet who faced racism and devoted himself
    to depicting the black experience in America.
   </Summary>
   <Notes>
    "Works by Paul Laurence Dunbar": p. 113-114.
    Includes bibliographical references (p. 124) and index.
   </Notes>
   <UrlsText></UrlsText>
   <AwardsText></AwardsText>
   <Prices>
    <Price store_id="alibris" is_in_stock="1" is_new="0"
           check_time="2005-07-29T01:18:18" price="14.92"/>
    <Price store_id="amazon" is_in_stock="1" is_new="1"
           check_time="2005-07-29T01:18:20" price="26.60" />
   </Prices>
  </BookData>
 </BookList>
</ISBNdb>

此外,这里有关于'books collection'响应XML中属性的specific documentation

答案 4 :(得分:0)

1)搜索标题相同 2)迭代响应列表(对于大多数书籍应该是5-10个结果,具有通用标题的书籍如“Python Programming”将导致大量结果因此可能无法解决) 3)查看ISBN号+发布日期的差异

我不记得有相同的直接api。