TypeScript:
Аналіз HTML

Як робити:

Щоб розпочати, встановіть бібліотеку, як от node-html-parser. Ось команда для терміналу:

npm install node-html-parser

Тепер давайте розберемо деякий базовий HTML в TypeScript:

import { parse } from 'node-html-parser';

const html = `<ul class="fruits">
                <li>Apple</li>
                <li>Banana</li>
              </ul>`;

const root = parse(html);
console.log(root.querySelector('.fruits').textContent);  // "Apple Banana"

А якщо ви хочете отримати лише банани:

const bananas = root.querySelectorAll('li')[1].textContent;
console.log(bananas);  // "Banana"

Глибше занурення

Парсинг HTML не є чимось новим—він існує з ранніх днів вебу. Спочатку розробники могли користуватися регулярними виразами, але це швидко стало заплутаним. Введемо DOM Parser: стабільний, але прив’язаний до браузера.

Бібліотеки на кшталт node-html-parser абстрагують цей біль. Вони дозволяють запитувати HTML так, як це можна зробити з jQuery, але на стороні сервера з Node.js. Це швидко, толерантно до нечистого HTML і дружнє до DOM.

Є також jsdom, який симулює ціле браузерне середовище. Він важчий, але більш повний, створюючи повноцінну модель об’єкта документа (DOM) для маніпуляції та взаємодії.

Не забудьмо також про Cheerio. Воно поєднує швидкість з синтаксисом подібним до jQuery і меншим розміром, займаючи щасливе місце між двома.

Див. також

Якщо ви хочете дізнатися більше, загляньте сюди: