Leach! Itemizer開発日記

フォロワーの興味・関心を可視化する http://itemizer.leach.tokyo/

カテゴリ一覧の生成

Wikipediaが公開しているSQLダンプファイルを用いてカテゴリ一覧を生成しようと考えている。

カテゴリの一覧は取得できるがサブカテゴリをcategoryテーブルからは取れないようなので、うまく取れる方法はないか模索した。

stackoverflowによれば、page, category, category_linksテーブルの3つが必要であると記載されているのでとりあえずmysql にimportしてデータを眺めてみる。

mediawiki - Wikipedia Category Hierarchy from dumps - Stack Overflow

どうやら以下のSQL文でカテゴリ一覧を取れるっぽい

カテゴリ

MariaDB [wikipedia]> select page.page_title from categorylinks join page on page.page_id = categorylinks.cl_from join category on categorylinks.cl_to = category.cat_title where categorylinks.cl_type = 'subcat' and category.cat_title like '学問';
+-----------------------------------+
| page_title                        |
+-----------------------------------+
| 学問の分野                        |
| 科学                              |
| 学問スタブ                        |
| 架空の思想・学問                  |
| 学者                              |
| 学術出版                          |
| 学術称号                          |
| 学術団体                          |
| 学生                              |
| 学派                              |
| 学問の賞                          |
| 研究                              |
| 高等教育                          |
| 知識                              |
| 問題                              |
| ルネサンス・ユマニスム            |
+-----------------------------------+
16 rows in set (0.00 sec)