diff --git a/dedoc/readers/docx_reader/numbering_extractor.py b/dedoc/readers/docx_reader/numbering_extractor.py index 0bf7d22f..d7d84390 100644 --- a/dedoc/readers/docx_reader/numbering_extractor.py +++ b/dedoc/readers/docx_reader/numbering_extractor.py @@ -67,7 +67,10 @@ def parse(self, xml: Tag, paragraph_properties: BaseProperties, run_properties: else: ilvl = ilvl["w:val"] - lvl_info: LevelInfo = self.num_dict[num_id].level_number2level_info[ilvl] + try: + lvl_info: LevelInfo = self.num_dict[num_id].level_number2level_info[ilvl] + except KeyError: + return text = self.__get_list_item_text(ilvl, num_id) # change style of the paragraph/run: style -> pPr -> rPr diff --git a/dedoc/readers/docx_reader/styles_extractor.py b/dedoc/readers/docx_reader/styles_extractor.py index ec6a0cbf..cafd8256 100644 --- a/dedoc/readers/docx_reader/styles_extractor.py +++ b/dedoc/readers/docx_reader/styles_extractor.py @@ -99,7 +99,7 @@ def __get_styles_hierarchy(self, style: Tag, style_id: str, style_type: StyleTyp styles = [style] current_style = style - while current_style.basedOn: + while current_style and current_style.basedOn: try: parent_style_id = current_style.basedOn["w:val"] current_style = self.__find_style(parent_style_id, style_type)