2007年05月11日

携帯版Wikipedia

はてなブックマークに登録

Wikipediaを携帯版にカスタマイズしてみました。

まだpre-αレベルですが、こっそりURLを公開してみます。 現在携帯3キャリアからしかアクセスできませんが、後日Willcomにも対応したいと思います。


http://kpedia.klab.org/

「こんな機能があったらうれしいな」等ありましたら、コメントをお願いします。

以下、中身の話

Wikipediaをコピーする

WikipediaのWikiシステムであるMediawikiは、バックエンドにMySQLやPostgreSQLといったDBを利用しています。 そして、Wikipediaは定期的にDBのバックアップを取り、それを公開しています。(DBダンプあげるからクロールしないでねという意味もあります)

携帯版Wikipediaでは、Wikipedia本家のDBダンプをもらってきて、独自にMediawikiを動かしています。

携帯電話向けのカスタマイズ

携帯電話で見るために行った主な修正は以下のとおりです。

  1. Shift_JIS対応(出力とGETパラメータ)
  2. 携帯向けに軽いシンプルなSkinを用意
  3. 飛んだら新規ページを作る画面に飛ぶリンクの削除
  4. だいたい1ページ10KB未満に収まるようにページ分割

3. と 4. については、ほとんど 2. で作成したSkinの内部で行っています。

Mediawikiにおいて、Skinは、Parserから呼び出されてHTMLコードを返すという役割と、 HTML化された記事本文を受け取って、ページ全体のHTMLを生成するという役割があります。

3.は、新規作成画面へのリンクを作成する為の関数をオーバーライドして、リンクでは無い ただの文字列だけを出力するようにして実現しました。

4.は、記事本文を受け取ってページを生成する時に、記事本文が大体7KBの範囲に収まるように 分割し、GETパラメータで渡されたページ番号に該当する部分だけをレンダリングすることで実現しました。

このまま完成度を上げていって、日本の携帯用Skinとして公開できたらなと思っています。

klab_gijutsu2 at 13:45│Comments(0)TrackBack(0)

トラックバックURL

この記事にコメントする

名前:
URL:
  情報を記憶: 評価: 顔   
 
 
 
Blog内検索
Archives
このブログについて
DSASとは、KLab が構築し運用しているコンテンツサービス用のLinuxベースのインフラです。現在5ヶ所のデータセンタにて構築し、運用していますが、我々はDSASをより使いやすく、より安全に、そしてより省力で運用できることを目指して、日々改良に勤しんでいます。
このブログでは、そんな DSAS で使っている技術の紹介や、実験してみた結果の報告、トラブルに巻き込まれた時の経験談など、広く深く、色々な話題を織りまぜて紹介していきたいと思います。
最新コメント