use HTML::Entities;
use HTML::TokeParser::Simple;
my $p = HTML::TokeParser::Simple->new('somefile');
while ( my $token = $p->get_token ) {
print $token->as_is;
next unless $token->is_start_tag( 'textarea' );
while ($token) {
$token = $p->get_token;
last if $token->is_end_tag( 'textarea' );
print HTML::Entities::_entities( $token );
}
print $token->as_is;
}