Проанализированное дерево HTML
htmlTree
объект представляет проанализированный элемент HTML или узел. Извлеките части интереса с помощью findElement
функционируйте или Children
свойство и текст извлечения с помощью extractHTMLText
функция.
анализирует код HTML в строке tree
= htmlTree(code
)code
и возвращает получившуюся древовидную структуру.
Совет
Чтобы проанализировать код XML, используйте readstruct
функция.
code
— Код HTMLКод HTML в виде массива строк, вектора символов или массива ячеек из символьных векторов.
Совет
Чтобы считать код HTML из веб-страницы, использовать webread
.
Чтобы извлечь текст из файла HTML, использовать extractFileText
.
Пример: "<a href='https://www.mathworks.com'>MathWorks</a>"
Типы данных: char |
string
| cell
Children
— Прямые потомки элементаhtmlTree
массивПрямые потомки элемента в виде htmlTree
массив.
Parent
— Родительский узелhtmlTree
объектРодительский узел в дереве в виде htmlTree
объект.
Если дерево HTML является корневым узлом, то значение Parent
ismissing
.
Name
— Имя элемента HTMLИмя элемента HTML в виде строкового скаляра.
Для получения дополнительной информации смотрите Элементы HTML.
findElement | Найдите элементы в дереве HTML |
getAttribute | Считайте HTML-атрибут корневого узла дерева HTML |
extractHTMLText | Извлеките текст из HTML |
ismissing | Найдите деревья HTML без значений |
Считайте код HTML из https://www.mathworks.com/help/textanalytics
URL использование
webread
.
url = "https://www.mathworks.com/help/textanalytics";
code = webread(url);
Проанализируйте код HTML с помощью htmlTree
.
tree = htmlTree(code);
Просмотрите имя элемента корневого узла дерева.
tree.Name
ans = "HTML"
Просмотрите дочерние элементы корневого узла.
tree.Children
ans = 4×1 htmlTree: " " <HEAD><TITLE>Text Analytics Toolbox Documentation</TITLE><META charset="utf-8"/><META content="width=device-width, initial-scale=1.0" name="viewport"/><META content="IE=edge" http-equiv="X-UA-Compatible"/><LINK href="/includes_content/responsive/css/bootstrap/bootstrap.min.css" rel="stylesheet" type="text/css"/><LINK href="/includes_content/responsive/css/site6.css?201903" rel="stylesheet" type="text/css"/><LINK href="/includes_content/responsive/css/site6_lg.css?201903" media="screen and (min-width: 1200px)" rel="stylesheet"/><LINK href="/includes_content/responsive/css/site6_md.css?201903" media="screen and (min-width: 992px) and (max-width: 1199px)" rel="stylesheet"/><LINK href="/includes_content/responsive/css/site6_sm+xs.css?201903" media="screen and (max-width: 991px)" rel="stylesheet"/><LINK href="/includes_content/responsive/css/site6_sm.css?201903" media="screen and (min-width: 768px) and (max-width: 991px)" rel="stylesheet"/><LINK href="/includes_content/responsive/css/site6_… " " <BODY id="responsive_offcanvas"><!-- Mobile TopNav: Start --><DIV class="header visible-xs visible-sm" id="header_mobile" translate="no"><NAV class="navbar navbar-default" role="navigation"><DIV class="container-fluid"><DIV class="row"><DIV class="col-xs-12"><DIV class="navbar-header"><BUTTON class="navbar-toggle topnav_toggle" data-target="#topnav_collapse" data-toggle="collapse" type="button"><SPAN class="sr-only">Toggle Main Navigation</SPAN><SPAN class="icon-menu"/></BUTTON><A class="svg_link navbar-brand" href="https://www.mathworks.com?s_tid=gn_logo"><IMG alt="MathWorks" class="mw_logo" src="/images/responsive/global/pic-header-mathworks-logo.svg"/></A></DIV></DIV></DIV><DIV class="row visible-xs visible-sm"><DIV class="col-xs-12"><DIV class="navbar-collapse collapse" id="topnav_collapse"><UL class="nav navbar-nav" id="topnav"><LI class="headernav_login"><A class="mwa-nav_login" href="https://www.mathworks.com/login?uri=http://www.mathworks.com/help/textanalytics/index.html">Sign…
Извлеките текст из дерева HTML использование extractHTMLText
.
str = extractHTMLText(tree)
str = "Text Analytics Toolbox™ provides algorithms and visualizations for preprocessing, analyzing, and modeling text data. Models created with the toolbox can be used in applications such as sentiment analysis, predictive maintenance, and topic modeling. Text Analytics Toolbox includes tools for processing raw text from sources such as equipment logs, news feeds, surveys, operator reports, and social media. You can extract text from popular file formats, preprocess raw text, extract individual words, convert text into numerical representations, and build statistical models. Using machine learning techniques such as LSA, LDA, and word embeddings, you can find clusters and create features from high-dimensional text datasets. Features created with Text Analytics Toolbox can be combined with features from other data sources to build machine learning models that take advantage of textual, numeric, and other types of data."
Считайте код HTML из https://www.mathworks.com/help/textanalytics
URL использование
webread
функция.
url = "https://www.mathworks.com/help/textanalytics";
code = webread(url);
Проанализируйте код HTML с помощью htmlTree
.
tree = htmlTree(code);
Найдите все гиперссылки в дереве HTML использованием findElement
. Гиперссылки являются узлами с именем элемента "A"
.
selector = "A";
subtrees = findElement(tree,selector);
Просмотрите первые несколько поддеревьев.
subtrees(1:10)
ans = 10×1 htmlTree: <A class="skip_link sr-only" href="#content_container">Skip to content</A> <A href="https://www.mathworks.com?s_tid=gn_logo" class="svg_link navbar-brand"><IMG src="/images/responsive/global/pic-header-mathworks-logo.svg" class="mw_logo" alt="MathWorks"/></A> <A href="https://www.mathworks.com/products.html?s_tid=gn_ps">Products</A> <A href="https://www.mathworks.com/solutions.html?s_tid=gn_sol">Solutions</A> <A href="https://www.mathworks.com/academia.html?s_tid=gn_acad">Academia</A> <A href="https://www.mathworks.com/support.html?s_tid=gn_supp">Support</A> <A href="https://www.mathworks.com/matlabcentral/?s_tid=gn_mlc">Community</A> <A href="https://www.mathworks.com/company/events.html?s_tid=gn_ev">Events</A> <A href="https://www.mathworks.com/products/get-matlab.html?s_tid=gn_getml">Get MATLAB</A> <A href="https://www.mathworks.com?s_tid=gn_logo" class="svg_link pull-left"><IMG src="/images/responsive/global/pic-header-mathworks-logo.svg" class="mw_logo" alt="MathWorks"/></A>
Извлеките текст из поддеревьев с помощью extractHTMLText
. Результат содержит текст ссылки от каждой ссылки на странице.
str = extractHTMLText(subtrees); str(1:10)
ans = 10×1 string
"Skip to content"
""
"Products"
"Solutions"
"Academia"
"Support"
"Community"
"Events"
"Get MATLAB"
""
Считайте код HTML из https://www.mathworks.com/help/textanalytics
URL использование
webread
.
url = "https://www.mathworks.com/help/textanalytics";
code = webread(url);
Проанализируйте код HTML с помощью htmlTree
.
tree = htmlTree(code);
Найдите все гиперссылки в дереве HTML использованием findElement
. Гиперссылки являются узлами с именем элемента "A"
.
selector = "A";
subtrees = findElement(tree,selector);
subtrees(1:10)
ans = 10×1 htmlTree: <A class="svg_link navbar-brand" href="https://www.mathworks.com?s_tid=gn_logo"><IMG alt="MathWorks" class="mw_logo" src="/images/responsive/global/pic-header-mathworks-logo.svg"/></A> <A class="mwa-nav_login" href="https://www.mathworks.com/login?uri=http://www.mathworks.com/help/textanalytics/index.html">Sign In</A> <A href="https://www.mathworks.com/products.html?s_tid=gn_ps">Products</A> <A href="https://www.mathworks.com/solutions.html?s_tid=gn_sol">Solutions</A> <A href="https://www.mathworks.com/academia.html?s_tid=gn_acad">Academia</A> <A href="https://www.mathworks.com/support.html?s_tid=gn_supp">Support</A> <A href="https://www.mathworks.com/matlabcentral/?s_tid=gn_mlc">Community</A> <A href="https://www.mathworks.com/company/events.html?s_tid=gn_ev">Events</A> <A href="https://www.mathworks.com/company/aboutus/contact_us.html?s_tid=gn_cntus">Contact Us</A> <A href="https://www.mathworks.com/store?s_cid=store_top_nav&s_tid=gn_store">How to Buy</A>
Получите ссылки гиперссылки с помощью getAttribute
. Задайте название атрибута "href"
.
attr = "href";
str = getAttribute(subtrees,attr);
str(1:10)
ans = 10×1 string array
"https://www.mathworks.com?s_tid=gn_logo"
"https://www.mathworks.com/login?uri=http://www.mathworks.com/help/textanalytics/index.html"
"https://www.mathworks.com/products.html?s_tid=gn_ps"
"https://www.mathworks.com/solutions.html?s_tid=gn_sol"
"https://www.mathworks.com/academia.html?s_tid=gn_acad"
"https://www.mathworks.com/support.html?s_tid=gn_supp"
"https://www.mathworks.com/matlabcentral/?s_tid=gn_mlc"
"https://www.mathworks.com/company/events.html?s_tid=gn_ev"
"https://www.mathworks.com/company/aboutus/contact_us.html?s_tid=gn_cntus"
"https://www.mathworks.com/store?s_cid=store_top_nav&s_tid=gn_store"
Считайте код HTML из https://www.mathworks.com/help/textanalytics
URL использование
webread
функция.
url = "https://www.mathworks.com/help/textanalytics";
code = webread(url);
Проанализируйте код HTML с помощью htmlTree
функция.
tree = htmlTree(code);
Найдите все абзацы в дереве HTML использованием findElement
функция. Абзацы являются узлами с именем элемента "P".
subtrees = findElement(tree,"P");
Преобразуйте поддеревья, чтобы представить использование в виде строки string
функция.
str = string(subtrees)
str = 26×1 string
"<P class="h1">↵ <A href="../index.html" class="coming_from_product">Documentation</A>↵ <A href="../index.html" class="not_coming_from_product">Help Center</A>↵</P>"
"<P>Text Analytics Toolbox™ provides algorithms and visualizations for preprocessing, analyzing, and modeling text data. Models created with the toolbox can be used in applications such as sentiment analysis, predictive maintenance, and topic modeling.</P>"
"<P>Text Analytics Toolbox includes tools for processing raw text from sources such as equipment logs, news feeds, surveys, operator reports, and social media. You can extract text from popular file formats, preprocess raw text, extract individual words, convert text into numerical representations, and build statistical models.</P>"
"<P>Using machine learning techniques such as LSA, LDA, and word embeddings, you can find clusters and create features from high-dimensional text datasets. Features created with Text Analytics Toolbox can be combined with features from other data sources to build machine learning models that take advantage of textual, numeric, and other types of data.</P>"
"<P class="category_desc">Learn the basics of Text Analytics Toolbox</P>"
"<P class="category_desc">Import text data into MATLAB<SUP>®</SUP> and preprocess it for analysis</P>"
"<P class="category_desc">Develop predictive models using topic models and word embeddings</P>"
"<P class="category_desc">Visualize text data and models using word clouds and text scatter plots</P>"
"<P class="category_desc">Information on language support in Text Analytics Toolbox</P>"
"<P>You clicked a link that corresponds to this MATLAB command:</P>"
"<P>Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.</P>"
"<P>Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: <STRONG class="recommended-country"/>.</P>"
"<P>You can also select a web site from the following list:</P>"
"<P>Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.</P>"
"<P class="text-center">↵ <A href="#" class="worldwide_link">Contact your local office</A>↵</P>"
"<P class="ff_section_title">Explore Products</P>"
"<P class="ff_section_title">Try or Buy</P>"
"<P class="ff_section_title">Learn to Use</P>"
"<P class="ff_section_title">Get Support</P>"
"<P class="ff_section_title">About <SPAN translate="no">MathWorks</SPAN></P>"
"<P class="h4 add_font_futura_medium add_margin_0">↵ <SPAN translate="no">MathWorks</SPAN>↵</P>"
"<P>↵ <EM>Accelerating the pace of engineering and science</EM>↵</P>"
"<P><SPAN translate="no">MathWorks</SPAN> is the leading developer of mathematical computing software for engineers and scientists.</P>"
"<P>↵ <A href="/discovery.html?s_tid=all_disc_mw_ff">Discover...</A>↵</P>"
"<P class="copyright" translate="no">© 1994-2021 The MathWorks, Inc.</P>"
"<P>↵ <EM>Join the conversation</EM>↵</P>"
Типичный элемент HTML содержит следующие компоненты:
Имя элемента – Имя HTML-тэга. Имя элемента соответствует Name
свойство дерева HTML.
Атрибуты – Дополнительная информация о теге. HTML-атрибуты имеют форму
, где name
= "value
"
и name
обозначьте название атрибута и значение соответственно. Атрибуты появляются во вводном HTML-тэге. Чтобы получить значения атрибута от дерева HTML, использовать value
getAttribute
.
Содержимое – содержимое Элемента. Содержимое появляется между открытием и закрытием HTML-тэгов. Содержимое может быть текстовыми данными или вложенными элементами HTML. Извлекать текст из htmlTree
объект, использовать extractHTMLText
. Получить вложенные элементы HTML htmlTree
объект, используйте Children
свойство.
Например, элемент HTML <a href="https://www.mathworks.com">Home</a>
включает следующие компоненты:
Компонент | Значение | Описание | |
---|---|---|---|
Имя элемента | a | Элементом является гиперссылка | |
Атрибут | Название атрибута | href | Ссылка гиперссылки |
Значение атрибута | "https://www.mathworks.com" | Значение ссылки гиперссылки | |
Содержимое | Home | Текст, чтобы отобразиться |
htmlTree
использует различный алгоритм для реструктуризации уродливого HTMLПоведение изменяется в R2021a
При создании htmlTree
объект, программное обеспечение автоматически реструктурирует уродливый входной код HTML, чтобы иметь допустимую структуру. Этот процесс реконструкции включает добавление, удаление, и редактирование элементов, а также реорганизацию древовидной структуры. Начиная в R2021a, программное обеспечение использует обновленный алгоритм, чтобы реструктурировать уродливый HTML. Это изменение может привести к htmlTree
объекты создали в R2021a или позже имеющем различном размере, структуре и содержимом когда по сравнению с предыдущими релизами.
Запуск в R2021a, при загрузке htmlTree
объекты из файлов MAT, созданных в R2020b или прежде, программное обеспечение автоматически реструктурирует htmlTree
объект с помощью того же алгоритма используется для создания htmlTree
объекты. При загрузке htmlTree
объекты из файлов MAT, созданных в R2021a или позже, программное обеспечение не реструктурирует htmlTree
объект.
Эта таблица подсвечивает некоторые известные шаги процесса реконструкции:
Шаг | Изменитесь в поведении |
---|---|
Автоматически добавьте элементы заголовка и голова. | Запуск в R2021a, при создании При загрузке |
Автоматически добавьте недостающие элементы. | Запуск в R2021a, при создании При загрузке |
Отбросьте части уродливого кода. | При создании |
extractHTMLText
| readPDFFormData
| findElement
| getAttribute
| ismissing
| tokenizedDocument
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.