Develop and Download Open Source Software

OpenSource Downloads

7-Zip  (3,583)  
CrystalDiskInfo  (1,811)  
Tera Term  (1,787)  
HandBrake Japanese Language Version  (1,743)  
CrystalDiskMark  (980)  
FFFTP  (765)  
ffdshow  (719)  
mixfont-mplus-ipa  (615)  
MergeDoc  (571)  
10  TortoiseSVN  (555)  
11  Amateras  (437)  
12  BathyScaphe  (396)  
13  FreeMind  (372)  
14  Cabos  (327)  
15  ギコナビ  (316)  
More >>

便利なMediaWiki用エクステンション2種

2008年07月16日 10:01 Peder-Halseide(2008年7月14日(月)) 1 2
 MediaWiki用の強力なツールを2種類紹介する。スプレッドシートのデータをwikiに高速インポートするツールと、wikiからクリック一つで目次・ページ番号付きPDFブックを作るツールだ。

 MediaWikiは、Wikipedia.comなどのサイトで使われているオープンソース・ソフトウェアだ。単にwikiというだけでなく、Webサイトとイントラネットのための完備したコンテンツ管理システムでもある。しかし、MediaWikiをインストールしたあと、データをインポートするのに苦労した経験を持つ人は多いだろう。そんなときに大いに役立つのがGPLライセンスで提供されているPerlスクリプトcsv2wikiだ。これを利用すると、wikiに大量のコンテンツをインポートすることができる。利用するには、当然、Perlがインストールされていなければならない(Windowsの場合はActive Perl)。csv2wikiはwiki.plというPerlスクリプトを呼び出し、これがwikiにログインし記事を編集する。

 コンテンツをインポートする際は、まずコンテンツをスプレッドシート形式で用意する。各列には適切なヘッダーを付けておくこと。次に、テンプレートを用意する。wikiは、このテンプレートに従ってコンテンツをレイアウトしフォーマットする。スプレッドシートの列ヘッダーとwikiテンプレート上の指定は1対1に対応する。

 たとえば、画像付きの辞書をインポートする場合、次のようなスプレッドシート(tasty.csvとする)を用意する。

Term
Definition
Image
Tag
Apple
A delicious fruit.
apple.png
Fruit
Walnut
A tasty nut.
walnut.jpg
Nut
Asparagus
A tasty vegetable.
asparagus.gif
Vegetable

 そして、次のようなwikiテンプレート(Template:Tastyとする)を用意する。

  ==Term==
  {{{Term}}}
  ===Definition and Picture===
  {{{Definition}}}
  http://example.com/{{{Image}}}
  [[Category:{{{Tag}}}]]

 最後にジョブ・ファイルを用意する。CSVファイルのコンテンツをwikiにインポートする際に必要な情報をすべて含むファイルだ。ソース・ファイル、wikiのURL、ユーザー名とパスワード、分離符(デフォルトはコンマだが、タブや任意の正規表現を用いることもできる)、記事のタイトル、テンプレート名の各フィールドから成る。上のCSVファイルをインポートする場合、ジョブ・ファイル(tasty.txtとする)は次のようになる。ここで、記事のタイトルはスプレッドシートの第1列にあるが、ジョブ・ファイルでは「1」ではなく「0」と指定する点に注意。

  csv: tasty.csv
  wiki: http://example.com/wiki/index.php
  user: username
  pass: password
  title: 0
  template: Tasty

 以上の3ファイルが用意できたら、「perl csv2wiki.pl tasty.txt」というコマンドを実行する。これで、データがインポートされる。

 あらかじめCSVファイルに変換する必要はあるが、このツールでさまざまな情報源のコンテンツを高速にインポートすることができる。試用では、20を超える列を含むスプレッドシートの4,000以上の記事を1時間程度でインポートすることができた。

 csv2wikiは作者のサイトOrganicdesign.co.nzとWikiExpert.comにしかなく、ダウンロードするにはユーザーIDが必要だ。しかし、それだけの価値はあり、その後の制限はない。また、対価を支払えば、詳細な説明書とサポートを受けることができる。

最終更新:2008年09月15日 17:07
SourceForge.JP is a Japanese version of SourceForge.net. For developments that are not related to Japan, we recommend you to use SourceForge.net.