2009-07-15 6 views
4

en utilisant l'API mediawiki, je peux lister les pages dans une catégorie donnée. Par exemple:mediawiki: obtenir les pages dans une catégorie donnée

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

retours:

<?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> 

Je veux maintenant limiter ma requête à un seul espace de noms MW. J'ai essayé d'utiliser le paramètre cmnamespace. Mais

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

renvoie le même résultat . Comment dois-je utiliser ce paramètre d'espace de nom?

Répondre

4

Cela ressemble à un bogue dans le code s'exécutant sur Wikipedia anglais - votre syntaxe fonctionne très bien pour moi sur les versions légèrement plus anciennes de MediaWiki.

+0

Merci joshua, j'ai transmis ma question à la liste de diffusion mw. Je vais valider votre réponse s'il s'agit d'un bug (et ça devrait être un bug :-)) – Pierre