研究上,如果要取得書籍資料當作測試,並不是每一家擁有資料者都那麼佛心的!特別是沒有任何關係者。慶幸的,国立国会図書館有提供這種服務!

http://opac.ndl.go.jp/ 網站上,可以透過關鍵字去查詢書籍,查詢完後,旁邊有個小按鈕 "Download" ,之後就可以把這次查詢的資料其 metadata 下載回來。其格式是 tab-delimited format (tsv) 並且最多讓你下載 200 筆資料。

以 Python 語法來處理下載下來的 tsv 檔案:

fd = codecs.open( target_file , 'rb' , 'Shift-JIS' )
rawitems = []
while True:
raw = fd.readline()
if raw is None or raw == '' :
    break
else:
    rawitems.append( raw.split( '\t' ) )
fd.close()

RE_ISBN = re.compile( '[0-9xX\-]{10,}' )

for rawdata in rawitems:

    ISBN = None
    TITLE = None
    PUBLISHER = None
    NOTE = None

    # ISBN
    if len(rawdata) < 17:
        continue
    ISBN = rawdata[16]
    ISBN = re.findall( RE_ISBN , ISBN )
    if len(ISBN) < 1 :
        continue
    ISBN = ISBN[0].replace('-', '')

    # TITLE
    if len(rawdata) < 2:
        continue
    TITLE = rawdata[1]

    # PUBLISHER
    if len(rawdata) < 9:
        continue
    PUBLISHER = rawdata[8]

    if len(rawdata) >= 16 :
        NOTE = rawdata[15]

    #
    # do something ...
    # ...
    
    return


changyy 發表在 痞客邦 PIXNET 留言(0) 人氣()