1
0
Fork 0
mirror of https://github.com/qurator-spk/modstool.git synced 2025-06-09 19:59:57 +02:00

🐛 mods4pandas: Handle periodical without structMap TYPE='PHYSICAL'

This commit is contained in:
Gerber, Mike 2023-12-12 13:13:23 +01:00
parent 6226618f40
commit b8a2872582

View file

@ -270,8 +270,11 @@ def pages_to_dict(mets, raise_errors=True) -> List[Dict]:
structMap_LOGICAL = mets.find('./mets:structMap[@TYPE="LOGICAL"]', ns)
fileSec = mets.find('./mets:fileSec', ns)
if structMap_PHYSICAL is None:
# This is expected in a multivolume work!
if structMap_LOGICAL.find('./mets:div[@TYPE="multivolume_work"]', ns) is not None:
# This is expected in a multivolume work or periodical!
if any(
structMap_LOGICAL.find(f'./mets:div[@TYPE="{t}"]', ns) is not None
for t in ["multivolume_work", "periodical"]
):
return []
else:
raise ValueError("No structMap[@TYPE='PHYSICAL'] found (but not a multivolume work)")