如何通过使用Google Book API了解ISBN来获取作者和标题?

时间:2014-10-14 12:21:06

标签: python python-2.7 google-books isbn

isbntools提供了一些有用的方法和函数来验证,清理,转换,连字符和获取ISBN字符串的元数据。

isbntools文档显示了如何使用Google图书获取元数据:

$ isbn_meta ISBN goob

但这是来自bash shell的命令的一个例子。如何通过使用Google Book API了解ISBN,但是从python代码中调用方法而不是从bash shell调用方法来获取作者和标题?

2 个答案:

答案 0 :(得分:5)

我无法在isbntool文档中清楚地找到如何使用API​​来使用Google Books API获取元数据(文档虽然有一些shell命令)。我不得不查看源代码,这是正确的答案:

import sys
from isbntools.app import *

isbn = "1883319420"

meta_dict = meta(isbn, service='goob')


print meta_dict['Authors']
print meta_dict['Title']

控制台输出:

takeisbn.py[stdout]:    
[u'Mark B. Woodhouse']
takeisbn.py[stdout]:    
Paradigm Wars

使上述代码更有用:如果您想使用其他在线服务,请将goob替换为[wcat|goob|openl|isbndb|merge]

wcat使用worldcat.org(无需密钥),goob使用Google图书服务(无需密钥),isbndb使用isbndb.com服务(api需要密钥),openl使用OpenLibrary.org api(不需要密钥),merge使用wcatgoob记录的合并记录(不需要密钥) )并且是默认选项

答案 1 :(得分:3)

在某些point处,元数据和更多内容的插件已移至isbnlib。所以现在你可以从ISBN中获取元数据:

import isbnlib

isbn = '9788177581805'

book = isbnlib.meta(isbn)

title = book['Title']
authors = book['Authors]

Hereisbnlib的文档,其中包含您可能想要使用的所有常用函数。