Merge pull request #304 from Teqniksoft/kiryl/converter_fix

Kiryl/converter fix
This commit is contained in:
Kiryl
2022-09-29 11:42:57 +03:00
committed by GitHub
2 changed files with 17 additions and 9 deletions

View File

@@ -99,11 +99,13 @@ class HtmlEpubProcessor:
return text
title_of_chapter: str = title_of_chapter.lower()
title_in_text: List[Tag] = chapter_tag.find_all(lambda tag: title_of_chapter == text_preparing(tag) or \
(title_of_chapter in text_preparing(tag) and
re.findall(r"^h[1-3]$", tag.name or chapter_tag.name)))
title_in_text: List[Tag] = chapter_tag.find_all(lambda tag: (title_of_chapter in text_preparing(tag) and
len(text_preparing(tag)) != 0 and
re.findall(r"^h[1-5]$", tag.name or chapter_tag.name)))
text_in_title: List[Tag] = chapter_tag.find_all(lambda tag: (text_preparing(tag) in title_of_chapter))
text_in_title: List[Tag] = chapter_tag.find_all(lambda tag: (text_preparing(tag) in title_of_chapter) and
len(text_preparing(tag)) != 0 and
re.findall(r"^h[1-5]$", tag.name or chapter_tag.name))
if title_in_text:
self.html_preprocessor._add_span_to_save_ids_for_links(
title_in_text[-1], chapter_tag)

View File

@@ -27,8 +27,14 @@ class HtmlPresetsProcessor:
kwargs["rule"]["tag_to_wrap"]))
@staticmethod
def _decompose_tag(**kwargs):
kwargs["tag"].parent.attrs.update(kwargs["tag"].attrs)
def set_attrs_to_parent(tag, parent_tag):
for key in tag.attrs:
if key not in parent_tag.attrs:
parent_tag.attrs[key] = tag.attrs[key]
def _decompose_tag(self, **kwargs):
if kwargs["tag"].parent:
self.set_attrs_to_parent(kwargs["tag"], kwargs["tag"].parent)
kwargs["tag"].decompose()
@staticmethod
@@ -111,9 +117,9 @@ class HtmlPresetsProcessor:
elif attr:
del kwargs["tag"][attr]
@staticmethod
def _unwrap_tag(**kwargs):
kwargs["tag"].parent.attrs.update(kwargs["tag"].attrs)
def _unwrap_tag(self, **kwargs):
if kwargs["tag"].parent:
self.set_attrs_to_parent(kwargs["tag"], kwargs["tag"].parent)
kwargs["tag"].unwrap()
@staticmethod