タグ

ブックマーク / ousttrue.hatenadiary.org (1)

  • Nokogiriに渡す前の文字コード判別 - 三次元日誌

    Nokogiriが確実に処理できるように、htmlを先に決め打ちでutf-8に変換する方法を模索してみた。 方針としては、 httpヘッダのcharsetは中身と一致しているとは限らないため参照しない。 metaタグのcharsetは信用する。 metaタグが無かったら自動判定。 文字コードを変換したらcharsetが書いてあるmetaタグを抜く。 という方向で文字コード判定関数を書いた。判定は適当に試したところ特に問題はなかった。 次に、検出したコードを元にUTF8に変換するのだが、 Encoding::UndefinedConversionError に遭遇。 http://charset.7jp.net/sjis.html googleでsjisと検索すると先頭に来るサイトですが0x81ADのコードで死ぬ。 Encoding::Shift_JISをEncoding::CP932に変え

    Nokogiriに渡す前の文字コード判別 - 三次元日誌
  • 1