カテゴリ一覧の生成
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)