HTML::DOM (1) — базовые методы чтения и записи

| Нет комментариев

Недавно на спане появился модуль HTML::DOM, который одновременно — и парсер и билдер. Пара первых простейших экспериментов с этим модулем.

Создание HTML

use v5.10;
use strict;
use HTML::DOM;

my $dom = new HTML::DOM;
$dom->write('<html>');
say $dom->innerHTML;

Здесь модуль создаст HTML с полным набором нужных тегов:

<html><head></head><body></body></html>

Более того, правильно обрабатываются и неправильные вызовы, например такой код

$dom->write('<html>');
$dom->write('<title>My Title</title>');

аккуратно размещает тег <title> внутри <head>:

<html><head><title>My Title</title></head><body></body></html>

Чтение HTML

Базовая операция чтения файла проста:

use v5.10;
use strict;
use HTML::DOM;

my $dom = new HTML::DOM;
$dom->parse_file('test.html');
say $dom->innerHTML;

Опять же, происходит внятное преобразование до валидного HTML-кода. Если файл test.html содержит одну строку <title>My Title</title>, то на выходе получается следующее:

<html><head><title>My Title</title>
</head><body></body></html>

Этими примитивными действиями модуль не ограничивается. В его распоряжении набор методов, напоминающих методы, доступные в XML::LibXML и при обработке DOM с помощью JavaScript.

 

Комментировать

Страницы

  • img

Об этой записи

Сообщение опубликовано 28.12.2009 23:08. Автор — ash.

Предыдущая запись — 100-й пост на onperl.ru

Следующая запись — Gearman::Driver

Смотрите новые записи на главной странице или загляните в архив, где есть ссылки на все сообщения.