Přeskočit na obsah

Uživatel:Stardust85/statistika

Z Wikislovníku

Kód wikitabulky vygenerován skriptem - počítá pouze existující kategorie. Vznikne-li nová kategorie, musí se sem ručně doplnit (nebo spustit znovu skript).

tabulka

[editovat]
počet hesel získaný pomocí makra PAGESINCATEGORY
jazyk / druh subst. adjekt. zájm. čísl. slovesa příslovce předložky spojky částice citosl. celkem
Afrikánština 34 5 - - - - - - - - 39
Angličtina 8 406 2 393 52 38 2 218 273 48 36 6 59 13529
Arabština 144 - - - - - - - - - 144
Asturština 4 - - - - - - - - - 4
Běloruština 30 - - - - - - 1 - - 31
Bosenština 9 - - - - - - - - - 9
Bretonština 18 - - - - - - - - - 18
Bulharština 41 - - - - - - 2 - - 43
Čečenština 10 - - - - - - - - - 10
Čeština 25 318 10 019 188 224 3 622 1 404 94 135 122 384 41510
Dánština 147 47 3 24 9 - - - - - 230
Esperanto 664 - 9 - - 12 - - - - 685
Estonština 287 37 - - - - - - - - 324
Fidžijština - - - - 1 - - - - - 1
Finština 1 862 316 - - - 117 - - - - 2295
Francouzština 6 561 3 282 57 34 2 202 211 - 19 - 47 12413
Fríština - 1 - - - - - - - - 1
Galicijština 46 - - - - - - - - - 46
Hebrejština 625 - - - - - - - - - 625
Chorvatština 57 - - - - - - - - - 57
Interlingua - - - - - - - - - -
Irština 339 - - - - - - - - - 339
Islandština 167 - - 2 - - - - - - 169
Italština 1 949 299 14 - 221 46 - 11 - - 2540
Japonština 3 300 - - - - - - - - - 3300
Kašubština 139 - - - - - - - - - 139
Katalánština 149 12 - - - - - - - - 161
Kečuánština 5 - - - - - - - - - 5
Krymská tatarština 11 - - - - - - - - - 11
Latina 1 432 465 28 18 403 - - 26 - - 2372
Litevština 314 - - - - - - - 6 - 320
Lotyština 265 - - - - - - - - - 265
Maďarština 855 118 - - 126 - - - - - 1099
Makedonština - - - - - - - 1 - - 1
Němčina 8 902 2 027 44 90 876 270 42 38 9 - 12298
Nizozemština 898 227 16 - 167 - - - - - 1308
Norština 12 2 2 2 - - - - - - 18
Okcitánština 86 - - - - - - - - - 86
Oshiwambo 0 - 0 - 0 - - - - - 0
Polština 4 418 255 23 - - 42 - 15 7 - 4760
Portugalština 390 - - - 56 - - 6 - - 452
Romština 185 - 11 - - - - - - - 196
Rumunština 93 - - - - - 2 - - - 95
Ruština 1 704 1 379 21 - 309 - - 7 - - 3420
Řečtina 1 186 - - - - - - - - - 1186
Sanskrt 31 - - - - - - - - - 31
Skotská gaelština 15 - - - - - - - - - 15
Slovenština 1 829 838 31 12 227 89 21 18 - - 3065
Slovinština 235 17 - - - 12 - - - - 264
Slovio 0 - - - - - - 0 - - 0
Srbština 1 601 - - - - - - 3 - - 1604
Stará angličtina 30 - - - - - - 3 - - 33
Staroslověnština - - - - - - - 2 - - 2
Svahilština 92 - - - - - - - - - 92
Španělština 1 667 173 46 53 210 30 9 10 3 - 2201
Švédština 710 134 50 69 251 93 34 24 8 15 1388
Tádžičtina - - - - - - 1 - - - 1
Tofalarština - - 1 - - - - - - - 1
Turečtina 458 - - - - - - - - - 458
Ukrajinština 546 - - - - - - 2 - - 548
Velština 22 - 4 - - - - - - - 26

kód skriptu

[editovat]
#!/bin/bash

# Generates table with detailed statistics about languages for cs.wiktionary.org
# see the result at cs.wiktionary.org/wiki/Uživatel:Stardust85/statistika

# author: Michel Samia (m.samia at seznam.cz)
# usage: $ ./newstats.sh > wikitable.txt

# WARNING: this script LOADS wikimedia servers by one request per language category
# (now mid 2009 about 60 GETs), so don't run it too often

LANG= # because behaviour of sorting, greping and other things are locale-dependent
DOMAIN="http://cs.wiktionary.org/wiki"
TYPES="substantiva\nadjektiva\nzájmena\nčíslovky\nslovesa\npříslovce\npředložky\nspojky\nčástice\ncitoslovce"

mkdir langs
i=0 # counter

echo -e "\nSTEP 1: Downloading categories" >&2

# Get list of language categories
wget -q -O- http://cs.wiktionary.org/wiki/Kategorie:Jazykov%C3%A9_kategorie |grep '<span class="CategoryTreeBullet">' | 
{
	echo "Next language..." >&2
	while read line
	do
		# page containing categories by types of words of given language (nouns, verbs...)
		langHref="$DOMAIN` echo $line | sed -e 's/^.*wiki//' | sed -e 's/".*$//'`"
		# name of the language
		langName="`echo $line | cut -d'>' -f 12 | cut -d'<' -f1`"

		echo -n > "langs/${langName}"
		echo $i $langName >&2

		i=$[ i + 1 ]

		# uz mame url kategorie s jazykem, ted z nej musime ziskat vhodne podkategorie
		# ty ulozime po radcich do lang/$langname, napr lang/Afrikánština
		wget -q -O- $langHref | grep '<li><div class="CategoryTreeSection"><div class="CategoryTreeItem">' | 
		{
			sum=0
			while read line2
			do
				typeHref="` echo $line2 | sed -e 's/<[^>]*>//g' | sed -e 's/\[.*\]//' | sed -e 's/(.*$//'`"
				echo "$typeHref" >> "langs/$langName"
			done
		}
		echo -n "sleeping..." >&2
		sleep 1 
		echo "OK" >&2
	done
}


######## generating the table ######

#now we have all the data and we can generate the table
echo -e "\nSTEP 2: Creating table" >&2

cd langs/

i=0
for file in *
do
	echo "$i: $file" >&2
	i=$[ i+1 ]

	echo " | $file"
	echo -e "${TYPES}" |
	{
		while read druh
		do
			completeDruh="`grep "$druh" "$file" | sed 's/^ //'`"
			if [[ "$completeDruh" == "" ]]
			then
				echo ' | -'
			else
				
				echo " | [[:Kategorie:$completeDruh| {{PAGESINCATEGORY:$completeDruh}}]]"
			fi
		done
	}

	echo " |  '''{{#expr:"

	first="true"

	echo -e "${TYPES}" |
	{
		while read druh
		do
			completeDruh="`grep "$druh" "$file" | sed 's/^ //'`"
			if [[ $completeDruh != "" ]]
			then
				if [[ $first == "true" ]]
				then
					echo "{{PAGESINCATEGORY:$completeDruh|R}}"
					first="false"
				else
					echo "+{{PAGESINCATEGORY:$completeDruh|R}}"
				fi
			fi
		done

		echo "}}'''"
		echo " |-"
	}
done