http://www.perlmonks.org?node_id=904830


in reply to pp module messes encoding

pm904757.pl
use strict; use warnings; use feature 'state'; use WWW::Mechanize; use Path::Class qw' file dir '; Main( @ARGV ); exit( 0 ); sub Main { my $mech = WWW::Mechanize->new(); #$mech->get('http://www.google.co.il'); $mech->get('http://tv.walla.co.il/?w=/2//200//2011-05-14/1'); my $content = $mech->content( format => 'text' ); my $thisf = file($0)->absolute; my $thisd = $thisf->dir; chdir $thisd or die "Cannot chdir($thisd): $!"; my $out = $thisf->basename; $out = "$out-out.txt"; writeFile( $out,$content); print join ' ', -s $out, $out, "\n"; } sub writeFile #form: writeFile(path,content) { my $filepath = shift; open my($txt), ">:utf8",$filepath or die "Cannot open $filepath : $! +"; print $txt "\x{feff}".join('',@_); close $txt ; }
packing
$ pp pm904757.pl $ a The locale codeset (cp1252) isn't one that perl can decode, stopped at + Encode/Locale.pm line 87. Compilation failed in require at LWP/UserAgent.pm line 976. $ pp -x pm904757.pl $ a 6294 a.exe-out.txt $ perl pm904757.pl 6281 pm904757.pl-out.txt
more runs
$ a 6294 a.exe-out.txt $ perl pm904757.pl 6281 pm904757.pl-out.txt $ a 6294 a.exe-out.txt $ perl pm904757.pl 6325 pm904757.pl-out.txt $ a 6330 a.exe-out.txt $ perl pm904757.pl 6323 pm904757.pl-out.txt $ perl pm904757.pl 6330 pm904757.pl-out.txt