Hoppa till innehållet

Malldiskussion:Antal aktiva

Sidans innehåll stöds inte på andra språk.
Från Wikipedia

Detta är en mall som innehåller antal aktiva skribenter (inloggade användare som gjort minst en redigering under de senaste 30 dagarna). Antalet hämtas från Special:Statistik med detta skript:

#! /bin/bash
mydata="$( lynx -source http://sv.wikipedia.org/wiki/Special:Statistik | grep -A1 dagarna | grep mw | sed 's/<td class="mw-statistics-numbers">//g;s/<\/td>//g;s/[ \t]//g')"
cleanint="$(activeu $mydata)"
python replace.py -summary:"Robot uppdaterar mall" -always -page:Mall:Antal_aktiva -regex "(.|\n)*" "$cleanint";

activeu är ett program skrivet i c++ som tar bort ett irriterande unicode-whitespace i ovanstående skript:

#include <iostream>
#include <string>
using namespace std;
int main(int argc, char *argv[])
{
	string s = argv[1];
	string temp = "";
	
	for(unsigned int i = 0 ;i < s.length(); i++)
	{
		if(s[i] == '1' || s[i] == '2' || s[i] == '3' || s[i] == '4' || s[i] == '5' || s[i] == '6'
		|| s[i] == '7' || s[i] == '8' || s[i] == '9' || s[i] == '0')
		{
			temp += s[i];
		}
	} 
	cout << temp;
	return 0;
}

All kod ovan är utgiven under GNU General Public License version 3 eller senare, med förhoppning om att det kan vara till nytta för någon, men utan några garantier över huvud taget. Copyright 2008 Mikael Nordin.

Ett enklare sätt (om du inte redan skrivit koden:) att hämta informationen borde vara API:t [1], som har informationen utan några konstiga specialtecken. /EnDumEn 25 oktober 2008 kl. 11.49 (CEST)[svara]
Smart, jag skall kolla på det. Jag har redan skrivit koden, men har inget emot att förbättra så klart. Dock verkar jag för tillfället ha andra problem relaterade till en ominstallation på servern. Måste kolla på det först innan jag pillar mer med skriptet. MiCkE 25 oktober 2008 kl. 13.36 (CEST)[svara]
Nu ser skriptet ut så här och hämtar alltså från api:t:
#! /bin/bash
mydata="$( lynx -source "http://sv.wikipedia.org/w/api.php?action=query&meta=siteinfo&siprop=statistics" | grep 'activeusers=' | sed 's/.*activeusers\=\&quot\;//' | sed 's/\&quot\;.*//')"
if [ ! -z "$mydata" ]
then
python replace.py -summary:"Robot uppdaterar mall" -always -page:Mall:Antal_aktiva -regex "(.|\n)*" "$mydata";
fi
MiCkE 30 december 2008 kl. 11.01 (CET)[svara]

Magiskt ord[redigera wikitext]

Nu finns det ett magiskt ord: {{NUMBEROFACTIVEUSERS}}. Så nu ligger det ordet här i stället, och roboten uppdaterar inte längre mallen. MiCkE 10 juli 2009 kl. 13.32 (CEST)[svara]