match = False
match_id = 0
- for url in record.get_fields('856'):
+ # Oxford MARC files from ScholarsPortal have DOIs in 956(!)
+ for url in record.get_fields('856','956'):
for urlval in url.get_subfields('u'):
# print "urlval", urlval
for library in options['libraries']:
if 'clean' in options:
field = clean_diacritics(field)
# Process all of the 856 fields
- if field.tag == '856':
+ # Oxford MARC files from ScholarsPortal have DOIs in 956(!)
+ if field.tag == '856' or field.tag == '956':
new_fields = process_urls(field, options, publisher)
if new_fields:
for new_856 in new_fields:
continue
data = options['settings'].get_settings(lib)
- subs = get_subfields(field, data, options['platform'])
+
+ platform = options['platform']
+ if field['u'].find('books.scholarsportal') > -1:
+ platform = 'ScholarsPortal'
+ subs = get_subfields(field, data, platform)
eight_five_six = pymarc.Field(tag = '856',
indicators = ['4', '0'],
subfields = subs