Пример использования модулей LWP и HTML::Tree - часть 7
135 $basic_html =~ s%<small class="micro">Книгопечатная продукция</small><br>%%ig; # убираем лишнюю информацию
136 $basic_html =~ s%<big class="BIG2">Результаты поиска</big><br><b><small>Найдено (\d+)</small></b>%%i;
137 $basic_html =~ s%style="padding-top:12;"%%i;
138 undef $root;
139 $root = HTML::TreeBuilder->new_from_content($basic_html);
140 foreach my $a ($root->look_down(_tag => 'a')){ # измененяем ссылки в документе на те, что нам нужно: в случае ссылки на другую страницу - изменяем эту ссылку на ссылку на скрипт; в случае ссылки на книгу подставляем партнёрский идентификатор
141 if($a->attr('href')=~ m/page=(\d+)/){$a->attr('href','http://perl.dp.ua/cgi-bin/book.cgi?text='.$arr[1].'&page='.$1);}
142 else{$a->attr('href','http://ozon.ru'.$a->attr('href')."?partner=d392"); $a->attr('target','_new_'.int(100000*rand()));}
143 }
144 $root->pos(undef);
145 foreach my $img ($root->look_down(_tag => 'img')){ # правим адреса картинок
146 my $temp = $img->attr('src');
147 $temp =~ s%//%/%ig;
148 $img->attr('src','http://ozon.ru'.$temp);
149 }
150 $root->pos(undef);
151 foreach my $td ($root->look_down(_tag => 'td', class => 'salecol')){ # убираем ненужную информацию
152 if($td->as_HTML("<>%") =~ m%buy%){
153 $td->replace_with(' ');