読者です 読者をやめる 読者になる 読者になる

Wikipediaからのテキスト抽出

NLP

個人レベルでいろいろテキストを解析して遊びたい時になかなか簡単に利用できるまとまったテキスト集合を入手しにくいです。
そんな時は、Wikipediaのテキストを利用しましょう。

Wikipediaはかなりよくできたシステムであり、定期的に全記事をアーカイブして誰でもダウンロードできる状態にしてくれています。
以下からダウンロードできます。

http://dumps.wikimedia.org/jawiki/

特に、こだわりがないのであれば、最近の日付は、「latest」フォルダの中にあります。
そこからダウンロードしましょう。
さて、いろいろなファイルがありますが、本文だけで良いなら、「jawiki-latest-pages-articles.xml.bz2」をダウンロードしましょう。
以下からダウンロードできます。

http://dumps.wikimedia.org/jawiki/latest/jawiki-latest-pages-articles.xml.bz2

お手元の通信環境にもよりますが、約1時間でダウンロードが完了します。

さて、ここからテキストを抽出していきます。
まず、用意するものを以下に示します。

wp2txtのインストール

wp2txtというとても便利なツールをインストールしましょう。
以下からダウンロードできます。

http://rubyforge.org/frs/?group_id=2963&release_id=34585

現時点の最新バージョンは、0.3.0だったので、「WP2TXT-install-0.3.0.exe」をダウンロードしました。
私の環境は、Windows7ですが、インストーラーは問題なく終了しました。
ただし、起動時に、dllがないと怒られるので、以下のサイトを参考に各種dllを集めました。

http://purple-bamboo.blogspot.jp/2010/11/windows-7wp2txt.html

私の環境の場合は、「zlib1.dll」を「WP2TXT.exe」と同じディレクトリに配置するだけで起動できました。

テキストの抽出

wp2txtを起動して、入力に先ほど入手した「jawiki-latest-pages-articles.xml.bz2」を指定すると、テキストを抽出してくれます。
私の環境では、テキストの抽出に約1時間かかりました。
簡単ですね。
設定によって、Wiki記法で書かれたタイトルだけを取り出せたりします。
今回は、デフォルトの設定を採用しました。

まとめ

Wikipediaからテキストを抽出するのは簡単にできるので、個人である程度の量があるまとまったテキストを利用したい場合は、Wikipediaのテキストを使うと良いと思います。
次回は、このWikipediaのテキストを使って、MeCabのドメイン適応の実験をしてみようと思います。