Handle missing ri:userkey gracefully in Confluence connector

This commit is contained in:
Weves 2024-02-18 15:13:36 -08:00 committed by Chris Weaver
parent 4d2959f1cc
commit f9733f9870

View File

@ -127,8 +127,13 @@ def parse_html_page(text: str, confluence_client: Confluence) -> str:
user_id = (
user.attrs["ri:account-id"]
if "ri:account-id" in user.attrs
else user.attrs["ri:userkey"]
else user.get("ri:userkey")
)
if not user_id:
logger.warning(
"ri:userkey not found in ri:user element. " f"Found attrs: {user.attrs}"
)
continue
# Include @ sign for tagging, more clear for LLM
user.replaceWith("@" + _get_user(user_id, confluence_client))
return format_document_soup(soup)