【发布时间】:2011-03-18 06:38:36
【问题描述】:
我的应用程序需要根据提供的 ISBN、书名或作者检索任何已出版图书的相关信息。这并不是一个独特的要求——像 Amazon.com、Chegg.com 这样的网站,甚至像 Book Collector 这样的软件似乎都能够轻松地做到这一点。但我无法复制它。
为了澄清,我不需要搜索整个图书数据库——只搜索已输入的有限子集,就像在图书收藏中一样。该数据库将允许我用必要的元数据标记输入的书籍,以启用对该书籍子集的搜索。所以规模不是这里的问题——获取元数据才是。
我尝试过的选项是:
- 抓取亚马逊。 抓取常规亚马逊页面对于缺少作者之类的问题不是很稳健,虽然抓取较小的移动页面更快,但它们在提取的稳健性方面存在相同的问题。此外,将其构建到应用程序中显然违反了亚马逊的服务条款。
- 刮掉国会图书馆。虽然这似乎具有较少的法律后果,但易用性和稳健性再次成为问题。
- ISBNdb.com API。 虽然该服务在一定程度上是免费的,并且可以很好地返回必要的元数据,但我每天需要为超过 500 本书执行此操作,此时这项服务的成本与使用成正比。我更喜欢免费或一次性付款解决方案,让我也能做到这一点。
- Google Book Data API。虽然这似乎提供了我需要的信息,但我无法按照他们的服务条款的要求显示图书预览。
- 购买图书数据库的许可。 例如,Ingram 或 Baker & Taylor 等公司向零售商和图书馆提供这些目录。这个解决方案显然很昂贵,所以我希望有一个我错过的更优雅的解决方案。但如果不是,并且 SO 上的某个人在特定数据库方面有很好的经验,我愿意接受。
我已尝试详细描述我的方法,以便其他书籍较少的人可以利用上述解决方案。但鉴于我的要求,我在检索图书元数据方面束手无策,因此非常感谢任何指针。
【问题讨论】:
-
你试过Goodreads API吗?
标签: database search amazon google-books