@m_seki の

I like ruby tooから引っ越し

SafariのWebArchiveを分解する

SafariでWebページを保存するとWebArchiveって形式になるんだけど、先日書いた解釈器はそれを読むためのもの。

メインのリソース(たぶんtext/html)をオブジェクトとして取り出すにはこんな感じ(ってスクリプトの末尾にあるけどさ)。

  web = BPlistParser.parse_file(ARGV.shift)
  body = web['WebMainResource']
  p body['WebResourceMIMEType']
  p body['WebResourceData'].force_encoding(body['WebResourceTextEncodingName'])

ちなみにXMLに変換するだけならplutilで充分。man plistすると出てきます。

plutil -convert xml1 -o - <file name>