HTTP_Clientで国際対応のページを日本語で取得する方法

Written by uechoco 7月 31
このエントリをはてなブックマークに追加HTTP_Clientで国際対応のページを日本語で取得する方法のはてなブックマーク被リンク数このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをBuzzurl(バザール)に追加

少し前の記事に、HTTP_Clientでクッキーを使う方法を書きましたが、結果を書いていませんでした。無事、クッキーを再現することができました。

さて、今回もHTTP_Clientですが、もう少し基本的な使い方で躓いたことを書いときます。

最近では国際化に対応したWebサイトも多くなり、ブラウザの言語設定をApache側で認識してページを振り分けたり、スクリプト内部で翻訳処理したりといったことをしてくれます。
そういった国際化対応ページにHTTP_Clientでアクセスした場合、(詳しく調べてはいませんが)デフォルトで英語のブラウザとして認識されて、アメリカーンな結果を返してくれます。われわれは日本人です。日本語で欲しいんです。

そんなときはパラメータやヘッダーを設定してやればいいわけです。HTTP_ClientはHTTP_RequestのラッパーなのでHTTP_Requestで使うパラメータやヘッダーを送ることができます。

PHP:
  1. var $_http_client_default_param = array('timeout' => 10, 'allowRedirects' => true, 'maxRedirects' => 2);
  2. var $_http_client_default_header = array('Accept-Language' => 'ja-JP,ja;q=0.9,en;q=0.8');
  3. $client =& new HTTP_Client($this->_http_client_default_param, $this->_http_client_default_header);

今回大事なのは$_http_client_default_headerで設定したAccept-Languageヘッダーです。これはHTTPヘッダのHTTP_ACCEPT_LANGUAGEに対応します。書式や意味は他のサイトを参照してください。

他にもいろいろなオプションを設定することができますが、今回はここまで。

このエントリをはてなブックマークに追加HTTP_Clientで国際対応のページを日本語で取得する方法のはてなブックマーク被リンク数このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをBuzzurl(バザール)に追加

No Responses to “HTTP_Clientで国際対応のページを日本語で取得する方法”

コメントはまだありません。

Comments RSS rss うえちょこ@ぼろぐ TrackBack Identifier URI rss うえちょこ@ぼろぐ

コメントする