Оптимизация и сжатие файлов на Python

Высокопроизводительная Python библиотека для оптимизации структуры и уменьшения размера файла с сохранением исходного качества и исходных данных.

Используйте наш API оптимизации документов для разработки высокоуровневого независимого от платформы программного обеспечения на Python. Это мощное решение для уменьшения размера документов и изображений с помощью Python.

Посмотреть фрагмент кода

Сжать Word документы на Python

Уменьшайте большие файлы без потери качества. Удалите ненужные и неиспользуемые данные. Уменьшите размер Word и HTML файлов на Python. Наша Python библиотека предоставляет разработчикам интегрированный API для оптимизации документов в различных форматах.

Эта Python библиотека является автономным решением и не требует установки стороннего ПО.

Уменьшить размер Word файлов на Python

Максимальный эффект можно получить за счет оптимизации изображений в высоких разрешениях, а также документов, содержащих такие изображения. Наша Python библиотека поможет вам сжать DOCX файлы, DOC, RTF, ODT, EPUB, HTML, JPG, PNG.

Оптимизация документов без потери качества стала проще благодаря 'Aspose.Words for Python via .NET'. В следующем примере показано, как уменьшить размер Word документа на Python:

Пример Python кода для оптимизации структуры и уменьшения размера файла
Загрузите файл, который хотите оптимизировать/сжать
Выполнить код
Выберите целевой формат из списка
import aspose.words as aw

doc = aw.Document("Input.docx")
doc.cleanup()

shapes = [node.as_shape() for node in doc.get_child_nodes(aw.NodeType.SHAPE, True)]
for shape in shapes:
    if shape.isImage:
        #  Разработчик должен выбрать библиотеку для сжатия изображений.
        image = Image.open(shape.image_data.to_stream())

        # ...
        #  Сжать изображение и вернуть его к форме.
        shape.image_data.set_image("yourCompressedImage")

save_options = aw.saving.OoxmlSaveOptions
save_options.compression_level = aw.saving.CompressionLevel.MAXIMUM

doc.save("Output.docx", save_options)
import aspose.words as aw doc = aw.Document("Input.docx") doc.cleanup() shapes = [node.as_shape() for node in doc.get_child_nodes(aw.NodeType.SHAPE, True)] for shape in shapes: if shape.isImage: # Разработчик должен выбрать библиотеку для сжатия изображений. image = Image.open(shape.image_data.to_stream()) # ... # Сжать изображение и вернуть его к форме. shape.image_data.set_image("yourCompressedImage") save_options = aw.saving.PdfSaveOptions save_options.cache_background_graphics = true doc.save("Output.docx", save_options) import aspose.words as aw doc = aw.Document("Input.docx") doc.cleanup() shapes = [node.as_shape() for node in doc.get_child_nodes(aw.NodeType.SHAPE, True)] for shape in shapes: if shape.isImage: # Разработчик должен выбрать библиотеку для сжатия изображений. image = Image.open(shape.image_data.to_stream()) # ... # Сжать изображение и вернуть его к форме. shape.image_data.set_image("yourCompressedImage") doc.save("Output.docx") import aspose.words as aw doc = aw.Document("Input.docx") doc.cleanup() shapes = [node.as_shape() for node in doc.get_child_nodes(aw.NodeType.SHAPE, True)] for shape in shapes: if shape.isImage: # Разработчик должен выбрать библиотеку для сжатия изображений. image = Image.open(shape.image_data.to_stream()) # ... # Сжать изображение и вернуть его к форме. shape.image_data.set_image("yourCompressedImage") save_options = aw.saving.OoxmlSaveOptions save_options.compression_level = aw.saving.CompressionLevel.MAXIMUM doc.save("Output.docx", save_options) import aspose.words as aw doc = aw.Document() builder = aw.DocumentBuilder(doc) shape = builder.InsertImage("Input.docx") # Обновите настройки страницы, чтобы обрезать документ по размеру изображения. pageSetup = builder.page_setup pageSetup.page_width = shape.width pageSetup.page_height = shape.height pageSetup.top_margin = 0 pageSetup.left_margin = 0 pageSetup.bottom_margin = 0 pageSetup.right_margin = 0 save_options = aw.saving.ImageSaveOptions(aw.SaveFormat.DOCX) doc.save("Output.docx", save_options) import aspose.words as aw renderer = aw.pdf2word.fixedformats.PdfFixedRenderer() pdf_read_options = aw.pdf2word.fixedformats.PdfFixedOptions() pdf_read_options.image_format = aw.pdf2word.fixedformats.FixedImageFormat.JPEG pdf_read_options.jpeg_quality = 50 with open ("Input.docx", 'rb') as pdf_stream: pages_stream = renderer.save_pdf_as_images(pdf_stream, pdf_read_options); builder = aw.DocumentBuilder() for i in range(0, len(pages_stream)): # Установите максимальный размер страницы, чтобы избежать масштабирования изображения текущей страницы. max_page_dimension = 1584 page_setup = builder.page_setup set_page_size(page_setup, max_page_dimension, max_page_dimension) page_image = builder.insert_image(pages_stream[i]) set_page_size(page_setup, page_image.width, page_image.height) page_setup.top_margin = 0 page_setup.left_margin = 0 page_setup.bottom_margin = 0 page_setup.right_margin = 0 if i != len(pages_stream) - 1: builder.insert_break(aw.BreakType.SECTION_BREAK_NEW_PAGE) save_options = aw.saving.PdfSaveOptions() save_options.cache_background_graphics = true builder.document.save("Output.docx", save_options) def set_page_size(page_setup, width, height): page_setup.page_width = width; page_setup.page_height = height;
Выполнить код

Как сжать Word, PDF, GIF, ZIP Python

  1. Установите Aspose.Words for Python via .NET.
  2. Добавьте ссылку на библиотеку (импортируйте библиотеку) в свой Python проект.
  3. Откройте исходный файл на Python.
  4. Сжимайте документы и изображения без потери качества.
  5. Вызовите метод document_cleanup(). Итоговый код может варьироваться в зависимости от форматов входных/выходных файлов.
  6. Получите результат в виде сжатого файла.

Python библиотека для оптимизации и сжатия файлов

Мы размещаем наши пакеты Python в репозиториях PyPi. Следуйте пошаговым инструкциям по установке "Aspose.Words for Python via .NET" в среду разработчика.

Системные Требования

Этот пакет совместим с Python ≥3.5 и <3.12. Если вы разрабатываете программное обеспечение для Linux, ознакомьтесь с дополнительными требованиями для gcc и libpython в документации по продукту.

Наиболее популярные форматы файлов для оптимизации

5%

Подпишитесь на обновления продукта Aspose

Получайте ежемесячные информационные бюллетени и предложения, доставляемые прямо на ваш почтовый ящик.