# Strip out 300 fields that only contain placeholders
elif field.tag == '300' and field['a'] == 'p. cm.':
pass
+ elif field.tag == '008' and field.value()[23] != 's':
+ fixed_field = pymarc.Field(
+ tag='008',
+ data=field.value()[:22] + 's' + field.value()[24:]
+ )
+ new_record.add_field(fixed_field)
else:
new_record.add_field(field)
# Check for a $z as the first 856; in Springer records, at least, this
# indicates a multi-volume set that requires keeping the $z around
- if field.subfields[0] == 'z':
+ if field.subfields[0] == 'z' and (
+ # However, we don't want to keep garbage-y public notes
+ not field.get_subfields('z')[0].startswith('Connect to MyiLibrary')
+ ):
subs.extend([field.subfields[0], field.subfields[1]])
subs.extend([