From 46d0829f7827844e1d9400703e6ac12a01dec60e Mon Sep 17 00:00:00 2001 From: Mauro Druwel Date: Mon, 23 Dec 2024 15:46:31 +0100 Subject: [PATCH 1/7] Update _markitdown.py to include images in markdown --- src/markitdown/_markitdown.py | 50 ++++++++++++++++++++++++++++------- 1 file changed, 40 insertions(+), 10 deletions(-) diff --git a/src/markitdown/_markitdown.py b/src/markitdown/_markitdown.py index 789c1e55..a8c83718 100644 --- a/src/markitdown/_markitdown.py +++ b/src/markitdown/_markitdown.py @@ -693,24 +693,54 @@ def convert(self, local_path, **kwargs) -> Union[None, DocumentConverterResult]: class DocxConverter(HtmlConverter): """ - Converts DOCX files to Markdown. Style information (e.g.m headings) and tables are preserved where possible. + Converts DOCX files to Markdown. Style information (e.g., headings) and tables are preserved where possible. """ - def convert(self, local_path, **kwargs) -> Union[None, DocumentConverterResult]: + def sanitize_filename(self, name: str) -> str: + """Sanitizes a string to make it a valid file name.""" + # Normalize whitespace + name = re.sub(r'\s+', " ", name.strip()) + # Replace invalid characters with underscores + return re.sub(r'[\\/*?:"<>|]', "_", name) + + def convert_image(self, image, output_dir: str) -> dict: + """Handles image extraction and saving.""" + os.makedirs(output_dir, exist_ok=True) + + raw_name = image.alt_text or f"image_{hash(image)}" + image_name = self.sanitize_filename(raw_name) + ".png" + image_path = os.path.join(output_dir, image_name) + + try: + with image.open() as image_bytes: + with open(image_path, "wb") as img_file: + img_file.write(image_bytes.read()) + return {"src": image_path} + except Exception: + # Return an empty src if saving fails + return {"src": ""} + + def convert(self, local_path: str, **kwargs) -> Union[None, DocumentConverterResult]: # Bail if not a DOCX extension = kwargs.get("file_extension", "") if extension.lower() != ".docx": return None - result = None - with open(local_path, "rb") as docx_file: - style_map = kwargs.get("style_map", None) - - result = mammoth.convert_to_html(docx_file, style_map=style_map) - html_content = result.value - result = self._convert(html_content) + try: + with open(local_path, "rb") as docx_file: + style_map = kwargs.get("style_map") + image_output_dir = kwargs.get("image_output_dir", "images") + + mammoth_result = convert_to_html( + docx_file, + style_map=style_map, + convert_image=images.inline(lambda img: self.convert_image(img, image_output_dir)), + ) - return result + html_content = mammoth_result.value + return self._convert(html_content) + except Exception: + return None class XlsxConverter(HtmlConverter): From 6ecc4f444f8e17089a41a06be4f0ad15416cf2f9 Mon Sep 17 00:00:00 2001 From: Mauro Druwel Date: Mon, 23 Dec 2024 15:52:22 +0100 Subject: [PATCH 2/7] pre-commit changes --- src/markitdown/_markitdown.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/markitdown/_markitdown.py b/src/markitdown/_markitdown.py index a8c83718..fa0f2b5d 100644 --- a/src/markitdown/_markitdown.py +++ b/src/markitdown/_markitdown.py @@ -699,7 +699,7 @@ class DocxConverter(HtmlConverter): def sanitize_filename(self, name: str) -> str: """Sanitizes a string to make it a valid file name.""" # Normalize whitespace - name = re.sub(r'\s+', " ", name.strip()) + name = re.sub(r"\s+", " ", name.strip()) # Replace invalid characters with underscores return re.sub(r'[\\/*?:"<>|]', "_", name) @@ -720,7 +720,9 @@ def convert_image(self, image, output_dir: str) -> dict: # Return an empty src if saving fails return {"src": ""} - def convert(self, local_path: str, **kwargs) -> Union[None, DocumentConverterResult]: + def convert( + self, local_path: str, **kwargs + ) -> Union[None, DocumentConverterResult]: # Bail if not a DOCX extension = kwargs.get("file_extension", "") if extension.lower() != ".docx": @@ -734,7 +736,9 @@ def convert(self, local_path: str, **kwargs) -> Union[None, DocumentConverterRes mammoth_result = convert_to_html( docx_file, style_map=style_map, - convert_image=images.inline(lambda img: self.convert_image(img, image_output_dir)), + convert_image=images.inline( + lambda img: self.convert_image(img, image_output_dir) + ), ) html_content = mammoth_result.value From 47640d6355f239bcdc0fa30b256299f579f4c8f9 Mon Sep 17 00:00:00 2001 From: Mauro Druwel Date: Mon, 23 Dec 2024 16:14:17 +0100 Subject: [PATCH 3/7] Fix references --- src/markitdown/_markitdown.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/markitdown/_markitdown.py b/src/markitdown/_markitdown.py index fa0f2b5d..14a0e867 100644 --- a/src/markitdown/_markitdown.py +++ b/src/markitdown/_markitdown.py @@ -733,10 +733,10 @@ def convert( style_map = kwargs.get("style_map") image_output_dir = kwargs.get("image_output_dir", "images") - mammoth_result = convert_to_html( + mammoth_result = mammoth.convert_to_html( docx_file, style_map=style_map, - convert_image=images.inline( + convert_image=mammoth.images.inline( lambda img: self.convert_image(img, image_output_dir) ), ) From 3a6f023f0b8cb55b29e2704bf3abae933c894f61 Mon Sep 17 00:00:00 2001 From: Mauro Druwel Date: Sat, 4 Jan 2025 12:53:02 +0100 Subject: [PATCH 4/7] Underscores, length limit, unique name, tests --- src/markitdown/_markitdown.py | 52 +++++++++++++++++++++---- tests/test_files/test_with_images.docx | Bin 0 -> 58583 bytes tests/test_markitdown.py | 14 +++++++ 3 files changed, 59 insertions(+), 7 deletions(-) create mode 100644 tests/test_files/test_with_images.docx diff --git a/src/markitdown/_markitdown.py b/src/markitdown/_markitdown.py index 1656eaf4..d6f550ab 100644 --- a/src/markitdown/_markitdown.py +++ b/src/markitdown/_markitdown.py @@ -702,19 +702,57 @@ class DocxConverter(HtmlConverter): """ def sanitize_filename(self, name: str) -> str: - """Sanitizes a string to make it a valid file name.""" - # Normalize whitespace - name = re.sub(r"\s+", " ", name.strip()) + """Sanitizes a string to make it a valid file name across different operating systems.""" + # Normalize underscore + name = re.sub(r"\s+", "_", name.strip()) + # Replace invalid characters with underscores - return re.sub(r'[\\/*?:"<>|]', "_", name) + name = re.sub(r'[\\/*?:"<>|]', "_", name) + + # Remove leading and trailing dots and spaces + name = name.strip(" .") + + # Limit the length of the filename to a reasonable length (e.g., 251 characters) + max_length = 251 + if len(name) > max_length: + name = name[:max_length] + + return name + + def truncate_filename(self, name: str, max_length: int, extension: str = "") -> str: + """Truncates the filename to ensure the final length is within the limit.""" + max_base_length = max_length - len(extension) + if len(name) > max_base_length: + return name[:max_base_length] + return name + + def unique_filename(self, base_path: str, max_length: int = 251) -> str: + """Generates a unique filename while ensuring it stays within the length limit.""" + base, ext = os.path.splitext(base_path) + truncated_base = self.truncate_filename(base, max_length, ext) + + counter = 1 + unique_path = f"{truncated_base}{ext}" + while os.path.exists(unique_path): + suffix = f"_{counter}" + # Ensure base is short enough to add the suffix + truncated_base = self.truncate_filename(base, max_length - len(suffix) - len(ext)) + unique_path = f"{truncated_base}{suffix}{ext}" + counter += 1 + + return unique_path def convert_image(self, image, output_dir: str) -> dict: - """Handles image extraction and saving.""" + """Handles image extraction and saving with collision avoidance and length limits.""" os.makedirs(output_dir, exist_ok=True) raw_name = image.alt_text or f"image_{hash(image)}" - image_name = self.sanitize_filename(raw_name) + ".png" - image_path = os.path.join(output_dir, image_name) + sanitized_name = self.sanitize_filename(raw_name) + truncated_name = self.truncate_filename(sanitized_name, 251, ".png") + image_path = os.path.join(output_dir, truncated_name + ".png") + + # Ensure unique filename + image_path = self.unique_filename(image_path) try: with image.open() as image_bytes: diff --git a/tests/test_files/test_with_images.docx b/tests/test_files/test_with_images.docx new file mode 100644 index 0000000000000000000000000000000000000000..fe34fc688698492c8b8cd16d9fde9171ae7c8193 GIT binary patch literal 58583 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 None: result = markitdown.convert(os.path.join(TEST_FILES_DIR, "test.docx")) validate_strings(result, DOCX_TEST_STRINGS) + # Test DOCX processing, with images + result = markitdown.convert(os.path.join(TEST_FILES_DIR, "test_with_images.docx")) + validate_strings(result, DOCX_IMAGES_TEST_STRINGS) + # Test DOCX processing, with comments result = markitdown.convert( os.path.join(TEST_FILES_DIR, "test_with_comment.docx"), From 1b0d1491bed01948e025a1899b6938583c15c72f Mon Sep 17 00:00:00 2001 From: Mauro Druwel Date: Sat, 4 Jan 2025 12:54:03 +0100 Subject: [PATCH 5/7] Pre-commit --- src/markitdown/_markitdown.py | 12 +++++++----- tests/test_markitdown.py | 2 +- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/markitdown/_markitdown.py b/src/markitdown/_markitdown.py index d6f550ab..bf1900c7 100644 --- a/src/markitdown/_markitdown.py +++ b/src/markitdown/_markitdown.py @@ -705,18 +705,18 @@ def sanitize_filename(self, name: str) -> str: """Sanitizes a string to make it a valid file name across different operating systems.""" # Normalize underscore name = re.sub(r"\s+", "_", name.strip()) - + # Replace invalid characters with underscores name = re.sub(r'[\\/*?:"<>|]', "_", name) - + # Remove leading and trailing dots and spaces name = name.strip(" .") - + # Limit the length of the filename to a reasonable length (e.g., 251 characters) max_length = 251 if len(name) > max_length: name = name[:max_length] - + return name def truncate_filename(self, name: str, max_length: int, extension: str = "") -> str: @@ -736,7 +736,9 @@ def unique_filename(self, base_path: str, max_length: int = 251) -> str: while os.path.exists(unique_path): suffix = f"_{counter}" # Ensure base is short enough to add the suffix - truncated_base = self.truncate_filename(base, max_length - len(suffix) - len(ext)) + truncated_base = self.truncate_filename( + base, max_length - len(suffix) - len(ext) + ) unique_path = f"{truncated_base}{suffix}{ext}" counter += 1 diff --git a/tests/test_markitdown.py b/tests/test_markitdown.py index f32022a3..261376ee 100644 --- a/tests/test_markitdown.py +++ b/tests/test_markitdown.py @@ -96,7 +96,7 @@ "# Abstract", "# Introduction", "AutoGen: Enabling Next-Gen LLM Applications via Multi-Agent Conversation", - "GitHub_-_microsoft_markitdown__Python_tool_for_converting_files_and_office_documents_to_Markdown.png" + "GitHub_-_microsoft_markitdown__Python_tool_for_converting_files_and_office_documents_to_Markdown.png", ] PPTX_TEST_STRINGS = [ From afda281a67d76c1b054a9beb6a9650c2d942cbe6 Mon Sep 17 00:00:00 2001 From: Mauro Druwel Date: Sat, 4 Jan 2025 13:08:21 +0100 Subject: [PATCH 6/7] Add more images --- tests/test_files/test_with_images.docx | Bin 58583 -> 145440 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/tests/test_files/test_with_images.docx b/tests/test_files/test_with_images.docx index fe34fc688698492c8b8cd16d9fde9171ae7c8193..e8c79f511b4850314645b5115426827e7ee50aa7 100644 GIT binary patch delta 94955 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 kgfN&W Date: Sat, 4 Jan 2025 13:26:27 +0100 Subject: [PATCH 7/7] Remove newlines in image alt_text --- src/markitdown/_markitdown.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/markitdown/_markitdown.py b/src/markitdown/_markitdown.py index bf1900c7..fa46bf9b 100644 --- a/src/markitdown/_markitdown.py +++ b/src/markitdown/_markitdown.py @@ -748,6 +748,7 @@ def convert_image(self, image, output_dir: str) -> dict: """Handles image extraction and saving with collision avoidance and length limits.""" os.makedirs(output_dir, exist_ok=True) + image.alt_text = image.alt_text.replace("\n", " ") raw_name = image.alt_text or f"image_{hash(image)}" sanitized_name = self.sanitize_filename(raw_name) truncated_name = self.truncate_filename(sanitized_name, 251, ".png") @@ -760,7 +761,7 @@ def convert_image(self, image, output_dir: str) -> dict: with image.open() as image_bytes: with open(image_path, "wb") as img_file: img_file.write(image_bytes.read()) - return {"src": image_path} + return {"src": image_path, "alt": image.alt_text} except Exception: # Return an empty src if saving fails return {"src": ""}