Можно использовать программу очистки HTML, такую как HTML, Опрятный, чтобы устранить много проблем и идентифицировать проблемы, которые необходимо решить вручную. Для описания требований для содержимого HTML, чтобы можно добавить, смотрите Требования КОДА HTML для Отчетов DOM.
Можно использовать HTML Опрятная программа, чтобы зафиксировать содержимое HTML так, чтобы это удовлетворило требования для добавления к отчету DOM. Этот пример использует пакетный файл, чтобы зафиксировать содержимое HTML.
Скопируйте это содержимое HTML в текстовый редактор, такой как WordPad.
<html> <head> <title>Hi there</title> </head> <body> <p>This is a page a simple page with a simple table <style> table, th, td { border: 1px solid black; } </style> <table style="width:50%"> <tr> <td><b>Name</B></td> <td><b>Age</b></td> <td><b>Occupation</b></td> </tr> <tr> <td>Joe Smith</td> <td>40</td> <td>Plumber</td> </tr><tr> <td>Sue Jones</td> <td>33</td> <td>Scientist</td> </tr> <tr> <td>Carlos Martinez</td> <td>38</td> <td>Lawyer</td> </tr> </table> </body> </html>
Это содержимое HTML имеет элементы, которые не являются XML parsable, включая:
Отсутствие закрывающего тэга:
<p>This is a page a simple page with a simple table
Противоречивый случай для тега элементов:
<td><b>Name</B></td>
В текущей папке MATLAB® сохраните файл с помощью имени файла simple_html_example.html
.
Отобразите файл в браузере HTML. Несмотря на то, что содержимое HTML содержит элементы, которые не являются XML parsable, оно отображается правильно в большинстве браузеров HTML, таких как Internet Explorer.
В MATLAB попытайтесь добавить файл HTML к отчету DOM.
import mlreportgen.dom.*; rpt = Document('html_report','docx'); htmlFile = HTMLFile('simple_html_example.html');
Вы получаете эту ошибку.
Error using mlreportgen.dom.HTMLFile Parsing HTML text: "simple_html_example.html" caused error: "HTML error: "expected end of tag 'b'""
Загрузите HTML Опрятная программа. Например, чтобы загрузить Опрятный для Windows®, перейдите к http://www.paehl.com/open_source/?HTML_Tidy_for_Windows. Нажмите EXE Version compiled 06 nov 2009
ссылка.
Чтобы загрузить Опрятный для других платформ, см. https://binaries.html-tidy.org/.
В tidy.zip
файл, щелкните правой кнопкой по tidy.exe
и выберите Extract. Извлеките tidy.exe
к текущей папке MATLAB.
Создайте пакетный файл, чтобы использовать с Опрятным. В Блокноте введите следующий код.
tidy --doctype omit --input-xml no --output-xml yes --write-back yes -f errs.txt %1
Сохраните пакетный файл в пути к Windows. Сохраните файл как tidyup.bat
. Можно использовать этот пакетный файл с другими файлами HTML, которые вы хотите добавить к отчету DOM.
Сделайте резервную копию simple_html_example.html
файл, который содержит HTML, чтобы добавить к отчету DOM.
Запуститесь опрятный на simple_html_example.html
. В командном окне Windows, введите:
tidyup simple_html_example.html
В папке, куда вы запустили tidyup
, проверяйте errs.txt
файл. Тот файл обобщает изменения, Опрятные сделанный, и перечисляет как ошибочные проблемы, которые Опрятный не могли зафиксировать. В этом примере нет никаких ошибок, но если errs.txt
действительно сообщали ошибки, вручную редактировали файл HTML, чтобы решить те проблемы.
В MATLAB добавьте simple_html_example.html
файл к DOM сообщает и отображает отчет.
import mlreportgen.dom.*; rpt = Document('html_report','docx'); htmlFile = HTMLFile('simple_html_example.html'); append(rpt,htmlFile); close(rpt); rptview(rpt.OutputPath);