From e252d45f3cdc337b2d1eacaf947c7c646b267ce3 Mon Sep 17 00:00:00 2001 From: Frederick Muriuki Muriithi Date: Thu, 10 Aug 2023 09:16:11 +0300 Subject: Clean up data before attempting to persist. --- wqflask/wqflask/metadata_edits.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'wqflask') diff --git a/wqflask/wqflask/metadata_edits.py b/wqflask/wqflask/metadata_edits.py index fdcb6597..43651525 100644 --- a/wqflask/wqflask/metadata_edits.py +++ b/wqflask/wqflask/metadata_edits.py @@ -9,7 +9,7 @@ from functools import reduce from collections import namedtuple from itertools import groupby -from typing import Dict +from typing import Dict, Optional import difflib import redis @@ -292,9 +292,18 @@ View the diffs here", "success") ) } ) + def __parse_int__(val) -> Optional[int]: + """Safe parser for integers""" + try: + return int(val, base=10) + except ValueError as _verr: + return None + except TypeError as _terr: + # trying to convert None + return None publication_ = { key: val for key, val in { - "pubmed_id": data_.get("pubmed-id"), + "pubmed_id": __parse_int__(data_.get("pubmed-id")), "abstract": data_.get("abstract"), "authors": data_.get("authors"), "title": data_.get("title"), -- cgit v1.2.3