本を読む

読書やコンピュータなどに関するメモ

Google Groupsの文字コードの謎

 Google GroupsではMLの新着がRSS/ATOMのフィードでとれる。が、Plaggerを使ってEFTで全文をとろうとすると、EFTではめこんだ日本語が「?」になってしまう。

 Plaggerのキャッシュを調べてみると、HTTPヘッダーやmetaタグやらでISO-8859-1が指定されている。本文はUTF-8なので、そりゃdecode_contentで化けるわけだ。ただし、ブラウザーで見るとUTF-8と指定されて来るのがさらに謎。

 そこで、LWPを使う簡単なPerlスクリプトを作り、パラメーターを変えて比較実験した。どうやらUser-Agentを見て指定を変えているようだ。そこで、PlaggerのYAMLのuser_agentでFirefoxのUser-Agent文字列を指定。Plaggerのキャッシュを一度クリアして試したら、無事全文が読めるようになった。

 ちなみに、Encode::decode('ISO-8859-1', UTF-8の日本語テキスト、Encode::FB_CROAK)とかやってもエラーにならず、それっぽいヨーロッパ文字に解釈される模様。

コメント

コメントの投稿

管理者にだけ表示を許可する

トラックバック

http://emasaka.blog65.fc2.com/tb.php/155-c63ebd59

 | HOME | 

Categories

Recent Entries

Recent Comments

Recent Trackbacks

Appendix

emasaka

emasaka

フリーター。
連絡先はこのへん

Monthly


FC2Ad