Perl - статьи


Пример использования модулей LWP и HTML::Tree - часть 6


117     my $page = $arr[0]; # получаем содержимое Озоновской страницы

118     my $charset = Lingua::DetectCharset::Detect ($page); # определяем кодировку документа, у Озона она win-1251, но делается это на всякий случай, а вдруг они перейдут на Кои-8 или данные попадают скрипту через какой-нибудь кэш-сервер, который перекодирует документы

119     $page = Convert::Cyrillic::cstocs ($charset, 'win', $page); # преобразуем в кодировку win-1251

120     my $root = HTML::TreeBuilder->new_from_content($page); # создаём объект HTML::TreeBuilder на основании содержания страницы

121     my $text_string2;

122     foreach my $table ($root->look_down(_tag => 'td')){ # ищем столбцы в таблицах и убираем ненужную информацию

123      my $table_html = $table->as_HTML("<>%");

124      if($table_html =~ m%Результаты поиска%ig){

125       $text_string2 = $table_html;

126      }

127     }

128     undef $root;

129     $root = HTML::TreeBuilder->new_from_content($text_string2); # пересоздаём объект на основании исправленных данных

130     my $basic_html = $root->as_HTML("<>%");

131     $basic_html =~ s/#6699cc/#38549C/g; # изменение цвета верхней полосы

132     $basic_html =~ s/#336699/#38549C/g; # изменение цвета верхней полосы

133     $basic_html =~ s/bgcolor="#ffffff"/bgcolor="#F4f4f4"/g; # изменение цвета фона текущей страницы(в ссылках)

134     $basic_html =~ s/bgcolor="White"/bgcolor="#F4f4f4"/ig; # изменение цвета фона страницы




Начало  Назад  Вперед



Книжный магазин