mediawiki:获取给定类别的页面

时间:2009-07-15 13:53:03

标签: xml api mediawiki

使用mediawiki API,我可以列出给定类别中的页面。例如:

http://en.wikipedia.org/w/api.php?action=query&list=categorymembers&cmtitle=Category:Physics

返回:

<?xml version="1.0"?>
<api>
  <query>
    <categorymembers>
      <cm pageid="22939" ns="0" title="Physics" />
      <cm pageid="24489" ns="0" title="Outline of physics" />
      <cm pageid="1653925" ns="100" title="Portal:Physics" />
      <cm pageid="3445246" ns="0" title="Glossary of classical physics" />
      <cm pageid="22950086" ns="0" title="Britney Spears&#039; Guide to Semiconductor Physics" />
      <cm pageid="2129107" ns="14" title="Category:Fundamental physics concepts" />
      <cm pageid="4769321" ns="0" title="Timeline of fundamental physics discoveries" />
      <cm pageid="694942" ns="14" title="Category:Physicists" />
      <cm pageid="1198" ns="0" title="Acoustics" />
      <cm pageid="1913676" ns="14" title="Category:Applied and interdisciplinary physics" />
    </categorymembers>
  </query>
  <query-continue>
    <categorymembers cmcontinue="Atomic, molecular, and optical physics|" />
  </query-continue>
</api>

我现在想将查询限制为仅一个MW命名空间。我尝试使用 cmnamespace 参数。但是

http://en.wikipedia.org/w/api.php?action=query&list=categorymembers&cmtitle=Category:Physics&cmnamespace=0

返回相同的结果。我该如何使用这个命名空间参数?

1 个答案:

答案 0 :(得分:4)

看起来像是在英语维基百科上运行的代码中的一个错误 - 在稍微旧版本的MediaWiki上,您的语法对我来说很好。