Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
При работе с внешним HTML-контентом всегда существует риск непредсказуемого поведения скриптов или медиа-элементов на странице. Aspose.HTML for Python via .NET предоставляет механизм песочницы, который позволяет контролировать, какие элементы документа могут выполняться или загружаться во время обработки. Это обеспечивает безопасный, предсказуемый и эффективный рендеринг и конвертацию HTML.
Большинство сценариев обработки HTML, таких как конвертация HTML в PDF или изображения, не требуют выполнения JavaScript или использования удаленного контента. Разрешение доступа к таким ресурсам может замедлить процесс или даже вызвать нежелательное поведение. Используя флаги песочницы, вы можете явно отключить или ограничить типы ресурсов, такие как скрипты, изображения, плагины, формы и т.д. Это дает вам детальный контроль над тем, что ваш документ может делать во время рендеринга или конвертации.
Следующий пример показывает, как отключить JavaScript при конвертации HTML в PDF. Это гарантирует, что никакие скрипты не будут выполняться во время рендеринга – идеально для безопасных конвертаций в PDF или другие форматы.
Sandbox.SCRIPTS. Это помечает скрипты как ненадежные ресурсы в среде песочницы. Этот шаг важен, поскольку скрипты представляют потенциальный риск выполнения вредоносного кода.HTMLDocument(address, configuration), который принимает путь к HTML-файлу и экземпляр конфигурации.Converter.convert_html() для конвертации HTML в PDF. 1# How to disable scripts for HTML to PDF conversion using Python
2
3import os
4import aspose.html as ah
5import aspose.html.converters as conv
6import aspose.html.saving as sav
7
8# Define input and output directories
9data_dir = "data"
10output_dir = "output"
11os.makedirs(output_dir, exist_ok=True)
12
13# Create an instance of the Configuration class
14with ah.Configuration() as config:
15 # Mark "scripts" as an untrusted resource
16 config.security |= ah.Sandbox.SCRIPTS
17
18 # Initialize an HTML document with the specified configuration
19 html_path = os.path.join(data_dir, "document-with-scripts.html")
20 with ah.HTMLDocument(html_path, config) as doc:
21 # Convert HTML to PDF
22 output_pdf = os.path.join(output_dir, "document-sandbox.pdf")
23 conv.Converter.convert_html(doc, sav.PdfSaveOptions(), output_pdf)Результат: Любой JavaScript внутри HTML-документа будет проигнорирован, создавая статический и безопасный вывод.
Выполните эти простые шаги, чтобы отключить загрузку изображений и безопасно конвертировать HTML в PDF с помощью Aspose.HTML for Python via .NET:
<span> со встроенным стилем, который устанавливает фоновое изображение из URL.Sandbox.IMAGES в конфигурации, чтобы пометить все изображения как ненадежные ресурсы.Converter.convert_html() для рендеринга документа и сохранения его как PDF-файла. 1# Disable loading images in HTML with sandbox configuration using Python
2
3import os
4import aspose.html as ah
5import aspose.html.converters as conv
6import aspose.html.saving as sav
7
8# Prepare HTML code and save it to a file
9code = "<span style=\"background-image:url('https://docs.aspose.com/html/images/work/lioness.jpg')\">Hello, World!!</span> " \
10 "<script>document.write('Have a nice day!');</script>"
11
12output_dir = "output"
13os.makedirs(output_dir, exist_ok=True)
14html_path = os.path.join(output_dir, "sandboxing.html")
15output_pdf = os.path.join(output_dir, "sandboxing-out.pdf")
16
17with open(html_path, "w", encoding="utf-8") as file:
18 file.write(code)
19
20# Create an instance of Configuration
21with ah.Configuration() as configuration:
22 # Mark 'IMAGES' as an untrusted resource
23 configuration.security |= ah.Sandbox.IMAGES
24
25 # Initialize an HTML document with the specified configuration
26 with ah.HTMLDocument(html_path, configuration) as document:
27 # Convert HTML to PDF
28 conv.Converter.convert_html(document, sav.PdfSaveOptions(), output_pdf)Результат: Изображения из внешних URL не будут загружены, и выходной PDF будет содержать только статический текстовый контент.
1. Какие опции песочницы доступны?
Aspose.HTML предоставляет несколько sandbox flags, которые вы можете комбинировать, например:
Sandbox.SCRIPTS – Отключает выполнение JavaScript.Sandbox.IMAGES – Блокирует загрузку внешних изображений.Sandbox.NAVIGATION – Предотвращает редиректы или попытки навигации.Sandbox.FORMS – Отключает отправку форм и связанную активность.Sandbox.PLUGINS – Предотвращает создание плагинов контентом.2. Как песочница улучшает производительность?
Пропуская выполнение скриптов и предотвращая сетевые запросы для внешних ресурсов, песочница значительно сокращает время обработки и использование ресурсов во время конвертации.
3. Как я могу комбинировать несколько ограничений песочницы?
Вы можете включить несколько ограничений одновременно, например:
configuration.security |= ah.Sandbox.SCRIPTS | ah.Sandbox.IMAGES
Эта строка отключает как выполнение JavaScript, так и загрузку изображений в одной конфигурации.
4. Доступна ли песочница для других языков?
Да. Та же функциональность доступна в Aspose.HTML for .NET и Aspose.HTML for Java, с похожими API для управления ограничениями песочницы.
5. Каковы распространенные случаи использования песочницы?
Вы можете скачать полные примеры и файлы данных с GitHub.
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.