1

我正在使用 Python 和 MySQL 查询 mediawiki 数据库以获取文章的当前状态(即文章是否为 FA、GA、GAN 等)但一直无法这样做。

我知道当前状态存储在old_text文本表的字段中。我试图这样做:

loc = select (locate('currentstatus', old_text))
query = ('select substring(old_text, '%s', 20) from wikidb where page_id = 1234' % (loc))

但不幸的是 loc 第一次出现currentstatus而不是最后一次出现不是很“当前”,因为最新/最新状态位于底部。

我不确定如何解决它,或者我是否使用了正确的方法。

4

1 回答 1

0

对于 Wikipedia,更重要的是检查文章所在的类别。或者如果处理原始 wikitext,则查找相应的模板:

  • 特色文章 (FA) 在 [[category:Featured article]] 中并使用 {{featured article}},它引用了 [[template:featured article]]
  • 好文章(GA)在 [[category:Good article]] 并使用 {{good article}},它引用 [[template:good article]]

这两个类别都是隐藏的,因此您必须启用显示隐藏类别的首选项,或者遍历类别内容以查看文章是否存在。

其他文章类别(A、B、C、FL、Start、Stub、List、未定义)使用一个或多个维基专题模板在相应的讨论页上进行评估。没有标准。

于 2011-07-08T07:43:31.097 回答