2011-05-23 78 views

回答

2

否。如果您需要這樣做,請自行打開文件(指定所需的任何編碼)並打印$mech->content即可。

+0

這將是法['decoded_content'](http://p3rl.org/HTTP::Message#%24mess-%3Edecoded_content%28_%options_% 29),那麼因爲我們需要編碼IO層的字符。 – daxim 2011-05-23 20:46:31

+1

@daxim:不,你正在考慮[HTTP :: Response](http://search.cpan.org/perldoc?HTTP::Response)。 WWW :: Mechanize自動解碼內容;它沒有'decode_content'方法。 – cjm 2011-05-23 21:22:14

+0

你說得對,我把這兩個搞糊塗了。 – daxim 2011-05-23 21:56:06

0

或者我可以寫這樣

open my $fh, '>:encoding(utf-8)', $file_name or die $!; 
my $res = $mech->get($url, ':content_cb' => sub{ print $fh shift });