日経Web刊 紙面ビューア、ほんの少しだけ技術面

  • XMLには見出し情報と、その紙面上におけるリージョン定義が含まれているのだけど、これを使って勝手にユーザ参加型(Android用、某ビューアのコメント機能など面白いのだけど)のものを作るとトラブルに発展する恐れ大。たまにデータおかしいものの基本的にはきれいに整理されているのだけに残念。
  • 記事画像は基本的に250KB前後。段階は3つ。サムネイル(1面につき1枚)、やや詳細(1面につき4枚)、かなり詳細(1面につき16枚)から構成されている。
  • 記事画像の「やや詳細」程度のものでなんとか読めなくは無い程度。読みやすさでは、やはり「かなり詳細」のものが必要そう
  • 結果、データ量は朝刊1日につき250(KB) * 21 * 40 = 210MB。結構なボリュームである。
  • サムネイルは紙面ビューアロード時に全て読み込まれるが、他はオンデマンド。
  • ちなみに全面カラー広告面などでは1画像あたり350KB程度あったりする。
  • 200MB以上毎朝並行コネクション張ってごっそり取得していたらすぐに怒られそう
  • 通常利用で想定される以上の負荷をかけたくはない
  • 紙面ビューアでの朝刊内容確認に30分程度かけるものとすれば、2秒/枚 程度のスピードで取得していけば文句は出ないと考えたい。
  • サーバが混んでくる時間帯を避け、朝刊更新後結構すぐに取得を開始して5時頃には取得完了しておけばなお良いか。
  • 実際の取得時には、「あまり読まない面」設定を設けて詳細画像を取得せず、紙面閲覧時点でオンデマンド取得するようにしておけば帯域負荷的にも良いのではないか(あくまでもサムネイルは取得する。広告回避などで日経新聞社のビジネスモデルに対する挑戦/妨害と受け取られるのは避けたいので)。例えば証券面(1〜4)などは人によっては読み飛ばすことが多く(関連業界の掲載された面しかチェックしない等)、読まないけれどデータだけ取得するというのは誰も幸せにならない感。

追記(2010/4/5): 関連記事として日経Web刊、紙面ビューア用画像取得スクリプト(Python)を書きました