diff --git a/src/research_index_backend/doi.py b/src/research_index_backend/doi.py index 2812265..82259ae 100644 --- a/src/research_index_backend/doi.py +++ b/src/research_index_backend/doi.py @@ -190,11 +190,10 @@ def search_dois(self, db: Driver) -> None: + "{self.num_new_dois} new DOIs" ) - @connect_to_db - def validate_dois(self, db: Driver) -> Dict[str, DOI]: + def validate_dois(self) -> Dict[str, DOI]: try: self.pattern_check() - self.search_dois(db) + self.search_dois() return self.doi_tracker except Exception as e: logger.error(f"DOI validation failed: {e}") diff --git a/src/research_index_backend/parser.py b/src/research_index_backend/parser.py index e46c9e5..3f9ae71 100644 --- a/src/research_index_backend/parser.py +++ b/src/research_index_backend/parser.py @@ -21,8 +21,8 @@ def parse_author(metadata: Dict) -> AnonymousAuthor | None: if pid and pid["id"]["scheme"] in ["orcid", "orcid_pending"]: orcid = pid["id"]["value"] - first_name = metadata.get("name", "").title() - last_name = metadata.get("surname", "").title() + first_name = (metadata.get("name") or "").title() + last_name = (metadata.get("surname") or "").title() if first_name in last_name: last_name = last_name.replace(first_name, "").strip() if last_name in first_name: