我想获得维基百科文章的类别列表。我目前使用这个api
http://en.wikipedia.org/w/api.php?action=query&prop=categories&pageids=17566205|39952380&inprop=url&format=xml
但是,我需要超过4M文章的类别,并想知道是否存在此类任务的数据转储。我不需要页面的文本内容,只需要其类别。
谢谢。
答案 0 :(得分:2)
在MediaWiki数据库架构中,有categorylinks
表,其中包含(以及其他)字段cl_from
(页面ID)和cl_to
(类别名称) :
+-------------------+------------------------------+------+-----+-------------------+-----------------------------+
| Field | Type | Null | Key | Default | Extra |
+-------------------+------------------------------+------+-----+-------------------+-----------------------------+
| cl_from | int(10) unsigned | NO | PRI | 0 | |
| cl_to | varbinary(255) | NO | PRI | | |
| cl_sortkey | varbinary(230) | NO | | | |
| cl_sortkey_prefix | varbinary(255) | NO | | | |
| cl_timestamp | timestamp | NO | | CURRENT_TIMESTAMP | on update CURRENT_TIMESTAMP |
| cl_collation | varbinary(32) | NO | MUL | | |
| cl_type | enum('page','subcat','file') | NO | | page | |
+-------------------+------------------------------+------+-----+-------------------+-----------------------------+
此表的数据可从WikiMedia dumps页面获得,作为SQL转储(例如enwiki-20140903-categorylinks.sql.gz
)。