in reply to Re: TreeBuilder and encoding
in thread TreeBuilder and encoding

..Ive tried explicitly setting STDOUT to utf-8 via binmode.. Actually, your STDOUT should have been set to use ":encoding(UTF-8)" instead of "utf-8".

Sorry for being imprecise, I had in fact tried both ":encoding(UTF-8)" and "utf-8".

this works for me though:

hmmm.... it actually doesnt for me. Which suggests it may be a platform issue. Ill try it on a few different boxen and let you know how it works out.

Replies are listed 'Best First'.
Re^3: TreeBuilder and encoding
by Khen1950fx (Canon) on Jul 15, 2013 at 23:08 UTC

    I think that you are working it a little to hard. There is no "utf-8", but there is ":utf8". I always use ":encoding(UTF-8)", just to be safe.

    Here's what I did: If you use the new_from_url method, then it will call LWP::UserAgent for you.
    #!/usr/bin/perl use strict; use warnings; use HTML::TreeBuilder 5 -weak; my $url = 'http://buyingguide.winemag.com/catalog/peju-1998-reserve-cabern +et-sauvignon-napa-rutherford'; my $tree = HTML::TreeBuilder->new_from_url( $url ); $tree->parse_content( $url ); my $review_et = $tree->look_down('itemprop', 'reviewBody'); binmode STDOUT, ":encoding(UTF-8)"; print $review_et->as_text; $tree->delete;