11

米国議会図書館には、ISBNで本を検索するためのサイトがあります。書籍の情報を取得する簡単な方法は、次のようなURLを使用することです。

http://lccn.loc.gov/2009019559/mods

ここで、簡単に解析できるXML構造を返します。URLには、次の形式の一意のLCCN番号が必要です。

http://lccn.loc.gov/[lccn]/mods

ISBNがバーコードでエンコードされた本のバッチがあります。書籍のXMLデータを取得するために、ISBNを取得/LCCNに変換するにはどうすればよいですか?

4

2 に答える 2

4

米国議会図書館の SRU カタログを使用できます。クエリは次のようになります。

lx2.loc.gov:210/lcdb?version=1.1&operation=searchRetrieve&query=bath.isbn=[ISBN]&maximumRecords=1&recordSchema=mods

[ISBN] を調べたいISBNに置き換えてください

その応答の中には LCCN 要素があります。ただし、カタログは既に MODS を返しているため、何もする必要がない場合があります。

于 2015-01-10T15:42:40.283 に答える
1

Google ブックス API を使用できます。例: https://www.googleapis.com/books/v1/volumes?q=LCCN2001051058

回答は JSON 形式です。ISBN-10 と ISBN-13 の両方の識別子が含まれています。お気に入りのプログラミング言語を使用してリクエストをバッチ処理する必要があります。Pharo Smalltalk で PetitJson パーサーを使用し、Zinc で HTTPS をサポートすると、次のようになります。

| parser lccnCollection |
parser := PPParserResource current parserAt: PPJsonParser.
lccnCollection := #('2001051058' '2001051058').
lccnCollection do: [: lccnNumber | 
    | json jsonObject |
    json := (Url absoluteFromText: 'https://www.googleapis.com/books/v1/volumes?q=LCCN' , lccnNumber) retrieveContents contents.
    jsonObject := parser parse: json.
    " ... retrieve ISSN from jsonObject, etc ... "].

Google にバッチ リクエストを行うには、API キーが必要になる場合があることに注意してください。

于 2012-12-03T06:08:35.837 に答える