fixing checking of attribute

This commit is contained in:
Hasko, Vladimir 2023-02-08 10:17:34 +00:00
parent e463db0379
commit 11ffa0d4d8

View File

@ -265,34 +265,32 @@ class OTCDocConvertor:
for lnk in soup.body.find_all("a"):
if (
lnk.string is None
and hasattr(lnk, "name")
and lnk.has_attr("name")
and not re.match(r"^li\d+$", lnk.attrs["name"])
# anywhere section
and not re.match(r".*section\d+$", lnk.attrs["name"])
# starts with table
and not re.match(r"^table\d+$", lnk.attrs["name"])
):
if (
not re.match(r"^li\d+$", lnk.attrs["name"])
# anywhere section
and not re.match(r".*section\d+$", lnk.attrs["name"])
# starts with table
and not re.match(r"^table\d+$", lnk.attrs["name"])
):
# Verify this is really called from somewhere:
local_ref = lnk["name"].lower()
if self.is_element_referred(local_ref, file_name):
# We now know something in the document wants this
# anchor - replace it with label
if local_ref not in page_anchors:
logging.debug("Adding anchor")
lnk.name = "p"
lnk.string = f"..\\_{local_ref}:"
del lnk["name"]
page_anchors.add(local_ref)
else:
logging.debug(
"Not placing replaced anchor %s "
" since it already existed",
local_ref,
)
# Verify this is really called from somewhere:
local_ref = lnk["name"].lower()
if self.is_element_referred(local_ref, file_name):
# We now know something in the document wants this anchor -
# replace it with label
if local_ref not in page_anchors:
logging.debug("Adding anchor")
lnk.name = "p"
lnk.string = f"..\\_{local_ref}:"
del lnk["name"]
page_anchors.add(local_ref)
else:
logging.debug("Dropping unreferred link %s", lnk)
logging.debug(
"Not placing replaced anchor %s "
" since it already existed",
local_ref,
)
else:
logging.debug("Dropping unreferred link %s", lnk)
# Undeline element should not be used at all
for underline in soup.body.find_all("u"):