htmlTree

Проанализированное дерево HTML

Описание

Объект htmlTree представляет проанализированный элемент HTML или узел. Извлеките части интереса с помощью функции findElement или свойства Children, и извлеките текст с помощью функции extractHTMLText.

Создание

Синтаксис

tree = htmlTree(code)

Описание

пример

tree = htmlTree(code) анализирует код HTML в строке code и возвращает получившуюся древовидную структуру.

Входные параметры

развернуть все

Код HTML, заданный как массив строк, вектор символов или массив ячеек из символьных векторов.

Совет

  • Чтобы считать код HTML из веб-страницы, используйте webread.

  • Чтобы извлечь текст из файла HTML, используйте extractFileText.

Пример: "<a href='https://www.mathworks.com'>MathWorks</a>"

Типы данных: char | string | cell

Свойства

развернуть все

Прямые потомки элемента, указанного как массив htmlTree.

Родительский узел в дереве, заданном как объект htmlTree.

Если дерево HTML является корневым узлом, то значением Parent является missing.

Имя элемента 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:

   (1,1)   
   (2,1)  <HEAD><TITLE>Text Analytics Toolbox Documentation</TITLE><META charse…
   (3,1)   
   (4,1)  <BODY id="responsive_offcanvas"><!-- Mobile TopNav: Start --><DIV cla…

Извлеките текст от дерева 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:

   (1,1)  <A class="svg_link navbar-brand" href="https://www.mathworks.com?s_ti…
   (2,1)  <A class="mwa-nav_login" href="https://www.mathworks.com/login?uri=ht…
   (3,1)  <A href="https://www.mathworks.com/products.html?s_tid=gn_ps">Product…
   (4,1)  <A href="https://www.mathworks.com/solutions.html?s_tid=gn_sol">Solut…
   (5,1)  <A href="https://www.mathworks.com/academia.html?s_tid=gn_acad">Acade…
   (6,1)  <A href="https://www.mathworks.com/support.html?s_tid=gn_supp">Suppor…
   (7,1)  <A href="https://www.mathworks.com/matlabcentral/?s_tid=gn_mlc">Commu…
   (8,1)  <A href="https://www.mathworks.com/company/events.html?s_tid=gn_ev">E…
   (9,1)  <A href="https://www.mathworks.com/company/aboutus/contact_us.html?s_…
  (10,1)  <A href="https://www.mathworks.com/store?s_cid=store_top_nav&amp;s_ti…

Извлеките текст от поддеревьев с помощью extractHTMLText. Результат содержит текст ссылки от каждой ссылки на странице.

str = extractHTMLText(subtrees);
str(1:10)
ans = 10×1 string array
    ""
    "Sign In"
    "Products"
    "Solutions"
    "Academia"
    "Support"
    "Community"
    "Events"
    "Contact Us"
    "How to Buy"

Считайте код 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&amp;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"

Больше о

развернуть все

Введенный в R2018b