首先要說的,無論是什麼讀或寫marc資料,都必須吃透marc的資料格式。如果是cnmarc的格式,強烈建議參考《中國機讀目錄格式使用手冊》,對格式的講解很詳細,保證事半功倍,根本不用看我在這裡羅嗦。
讀取,就分2步,一讀,一取。
讀:marc檔案是.iso格式的文字,每一條記錄都是分行的,有乙個結束符chr(29)。所以可以一行一行的讀取。
取:先獲取記錄頭標區和位址目次區的資訊,然後根據位址目次區的位置位址去切割。這裡有欄位分隔符chr(30),子欄位識別符號chr(31)
還是給個事例:
$--------chr(31)
@--------chr(30)
%--------chr(29)
#--------space
上邊是為學習方便人為的替代符號
這是一條marc資料:
1.頭標區:01071nam0#2200277###450#
固定24位,注意空格不能少哦。。
01071:記錄總長,5位
nam0:如果是叢書(有225欄位),就是oam2,當然每一位都有具體的意思。還有其他變化。這是常用的。
22:一般是22了,具體的意思也可以查書。
00277:資料字段區以前的字元總長度,5位。
450:一般是,具體一看書吧。
2.位址目次區,人為加了
」;」和
」,」區分。
001,0013,00000;005,0017,00013;…………………………801,0022,00771@
001,0013,00000 :
表示字段
001(
3位),字元長度
0013(4
位),在資料字段區開始的位置
00000(5
位)801,0022,00771 :
表示字段
801,字元長度
0022,
在資料字段區開始的位置
:00771
這裡是讀取的乙個重要的地方了,知道了這幾個資料,很容易分割出來。每個都是固定長度的。
3.資料字段區
[email protected]@##$a7-80142-191-4$dcny46.00@…………………………………………@%
欄位間就是
@分隔的,子字段用的$。
@##$
,這裡##
就是指示符位置了。如
101欄位有指示符
012,
所以
marc 資料基本字段
欄位名 型別 長度記錄號 001c 12isbn 號010 ac13 裝訂010 bc10 010 dc10 作品語種 101 ac3 正書名200 a c120 副書名200 e c100 分冊號200 ic20 分冊名200 h c100 著者200 f c100 其他責任 200 g c100...
免費MARC軟體
免費marc軟體 名 稱西文marc資料批套錄系統 說 明針對usmarc資料轉換和套錄的一款軟體 1.excel和usmarc互轉,實現二者之間的方便轉換,便於圖書館的採購和查重 2.批套錄usmarc資料,利用一批書號通過網路免費套錄標準的西文圖書資料,節省了人力,提高效率。3.marc資料檢視...
中讀取資料 讀取資料
對資料庫有一定了解的同學應該都知道資料表這個東西。資料表一般是以行列來儲存和展示資料的。每一列就是乙個資料字段,代表每一行資料的屬性。在python裡面也有類似表概念的東西,叫做dataframe。dataframe是我們資料分析和風控建模中很重要乙個元素,後續的很多資料操作都要以此為基礎。我們的資...