如何获取图书元数据?

时间:2010-07-20 06:07:52

标签: database search amazon google-books

我的应用程序需要根据提供的ISBN,标题或作者检索有关任何已发布图书的信息。这不是一个独特的要求---像Amazon.com,Chegg.com这样的网站,甚至像Book Collector这样的软件似乎都能够轻松地做到这一点。但我无法复制它。

为了澄清,我不需要搜索整个书籍数据库 - 只搜索已经输入的有限子集,如书籍集。数据库只是允许我用必要的元数据标记输入的书籍,以便能够搜索该书籍子集。因此,缩放不是问题 - 获取元数据是。

我尝试的选项是:

  1. 刮掉亚马逊。刮掉常规的亚马逊网页并不像缺少作者那样强大,而抓取较小的移动网页的速度更快,他们在提取的稳健性方面也存在同样的问题。此外,将其构建到应用程序中明显违反了亚马逊的服务条款。
  2. 刮掉国会图书馆。虽然这似乎有较少的法律后果,但又是问题的简单性和稳健性。
  3. ISBNdb.com API。虽然该服务是免费的,并且能够很好地返回必要的元数据,但我需要每天为500多本书执行此操作,此时此服务的成本与使用成比例。我更喜欢免费或一次性付款解决方案,允许我这样做。
  4. Google图书数据API。虽然这似乎提供了我需要的信息,但我无法按照其服务条款要求显示图书预览。
  5. 购买图书数据库的许可证。例如,像Ingram或Baker& Co.等公司。泰勒向零售商和图书馆提供这些目录。这个解决方案显然很昂贵,所以我希望有一个我错过的更优雅的解决方案。但如果没有,并且SO上的某个人对某个特定的数据库有很好的体验,我愿意接受它。
  6. 我试图详细描述我的方法,因此拥有较少书籍的其他人可以利用上述解决方案。但是考虑到我的要求,我在检测书籍元数据的过程中一直处于最佳状态,因此非常感谢任何指针。

4 个答案:

答案 0 :(得分:4)

由于您不太可能每天都要检索相同的500本书:将从isbndb.com检索到的数据存储在数据库中并逐一填写。

答案 1 :(得分:4)

您可以使用他们为联盟计划公开的API,而不是抓取亚马逊:https://affiliate-program.amazon.com/gp/advertising/api/detail/main.html

它允许每小时大约3k个请求并返回格式良好的XML。它要求您设置指向您显示相关信息的图书的链接,并且您必须声明您是联属合作伙伴。

答案 2 :(得分:1)

看起来很多图书馆和其他组织通过机器可读编目又名MARC提供“ISBN”等信息,您可以找到更多相关信息{{ 3}}。

现在知道搜索“正确”的术语我发现了here

也许这整个MARC的事情会给你一种新的想法:)

答案 3 :(得分:0)

这可能是您正在寻找的。他们甚至提供完整的下载! https://openlibrary.org/data