Wicri:Dilib source, module Wicri, commande WicriStatistiquesSite
De Wicri Outils
Révision datée du 9 juillet 2020 à 16:00 par imported>Jacques Ducloy (→Code source)
Code source
/* -*- coding: utf-8 -*- */
#include "SxmlNode.h"
int main()
{
SxmlNode *apiNode ;
SxmlNode *queryNode;
SxmlNode *statNode;
char *pagesStr;
int pagesNum;
printf ("{| class=\"wikitable sortable\" \n");
printf ("|- \n");
printf ("!Wiki\n");
printf ("!Pages\n");
printf ("|- \n");
while ((apiNode=SxmlInputGetDocumentElement()))
{
queryNode=SxmlGetFirstChildByTagName(apiNode, "query");
if (!queryNode)continue;
statNode= SxmlGetFirstChildByTagName(queryNode, "statistics");
if (!statNode)continue;
pagesStr=SxmlGetAttribute(statNode,"pages");
pagesNum= atoi(SxmlGetAttribute(statNode, "pages"));
printf ("|%s\n", SxmlInputRecordKey);
printf ("|{{formatnum:%s}}\n", pagesNum);
printf ("|- \n");
};
printf ("|}\n");
}
Mise en œuvre
Importation
WicriGetPage -l wicri-outils.fr -p "Wicri:Dilib source, module Wicri, commande WicriStatistiquesSite" \
| MediaWikiExtractSources -w | HfdStoreFile
Compilation
gcc testDilib/WicriStatistiquesSite.c $DILIB_CC -l curl -o testDilib/WicriStatistiquesSite
Test
- Pour visualiser la liste d'entrée
cat testDilib/wiki.dict \
| ./testDilib/WicriExpandApiFromList -a "meta=siteinfo&siprop=statistics" \
| SxmlIndent
- Pour tester
cat testDilib/wiki.dict \
| ./testDilib/WicriExpandApiFromList -a "meta=siteinfo&siprop=statistics" \
| ./testDilib/WicriStatistiquesSite