ISBN-Abfrage via API von ISBNdb.com
Für die Ermittlung eines Buchtitels habe ich einen Dienst gesucht, den ich mittels Skript und der ISBN, den gewünschten Buchtitel erfragen kann. Fündig wurde ich bei einem Eintrag auf Stackoverflow.com. Nachdem ich mir einen API-Access-Key auf http://isbndb.com/ besorgt hatte und mich in den API-Docs schlau gemacht habe, konnte ich ein einfaches Groovy-Skript schreiben.
Die Grundlage für das Skript bildet der folgende GET-Request:
http://isbndb.com/api/books.xml?access_key=123456789&index1=isbn&value1=0596002068
Aus dem Antwort XML lässt sich der Titel leicht auslesen:
Programming Web services with Perl Randy J. Ray and Pavel Kulchenko Farnham ; O'Reilly, 2002 printing, c2003.
Das fertige Skript sieht wie folgt aus:
// Abfrage der ISBNDB via API nach title def isbn = "0596002068" def accessKey= "1234567890" println isbn + " -> " + getTitle(isbn,accessKey) def getTitle(isbn,accessKey){ def urlStr = "http://isbndb.com/api/books.xml?access_key="+ "${accessKey}&index1=isbn&value1=${isbn}".toString() def url = new URL(urlStr) //println url.text def data = new XmlSlurper().parseText(url.text) return data.BookList.BookData.Title.text() }
Der Aufruf liefert folgendes Ergebnis:
groovy isbndbTitleSearch.groovy 0596002068 -> Programming Web services with Perl